<!DOCTYPE html>
<html class="client-nojs vector-feature-language-in-header-enabled vector-feature-language-in-main-page-header-disabled vector-feature-page-tools-pinned-disabled vector-feature-toc-pinned-clientpref-0 vector-toc-not-available vector-feature-main-menu-pinned-disabled vector-feature-limited-width-clientpref-1 vector-feature-limited-width-content-enabled vector-feature-custom-font-size-clientpref-1 vector-feature-appearance-pinned-clientpref-0 skin-theme-clientpref-day vector-sticky-header-enabled" lang="de" dir="ltr"><head>
<meta charset="UTF-8">
<title>JSON-LD</title>
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<link rel="icon" type="image/png" href="./_res_/favicon.png">
<link rel="canonical" href="https://de.wikipedia.org/wiki/JSON-LD"> <link href="./_mw_/ext.cite.styles.css" rel="stylesheet" type="text/css">
<link href="./_mw_/ext.pygments.css" rel="stylesheet" type="text/css">
<link href="./_mw_/ext.wikimediamessages.styles.css" rel="stylesheet" type="text/css">
<link href="./_mw_/skins.vector.icons.css" rel="stylesheet" type="text/css">
<link href="./_mw_/skins.vector.search.codex.styles.css" rel="stylesheet" type="text/css">
<link href="./_mw_/skins.vector.styles.css" rel="stylesheet" type="text/css">
<meta name="ResourceLoaderDynamicStyles" content="">
<link href="./_mw_/ext.gadget.citeRef.css" rel="stylesheet" type="text/css">
<link href="./_mw_/ext.gadget.defaultPlainlinks.css" rel="stylesheet" type="text/css">
<link href="./_mw_/ext.gadget.dewikiCommonHide.css" rel="stylesheet" type="text/css">
<link href="./_mw_/ext.gadget.dewikiCommonLayout.css" rel="stylesheet" type="text/css">
<link href="./_mw_/ext.gadget.dewikiCommonStyle.css" rel="stylesheet" type="text/css">
<link href="./_mw_/ext.gadget.dewikiDarkmode.css" rel="stylesheet" type="text/css">
<link href="./_mw_/ext.gadget.dewikiResponsive.css" rel="stylesheet" type="text/css">
<link href="./_mw_/ext.gadget.specialSearch.css" rel="stylesheet" type="text/css">
<link rel="stylesheet" type="text/css" href="./_mw_/site.styles.css">
<link rel="stylesheet" type="text/css" href="./_mw_/noscript.css">
<link rel="stylesheet" type="text/css" href="./_res_/footer.css">
<link rel="stylesheet" type="text/css" href="./_res_/vector-2022.css">
</head>
<body class="skin--responsive skin-vector skin-vector-search-vue mediawiki ltr sitedir-ltr mw-hide-empty-elt ns-0 ns-subject page-JSON-LD rootpage-JSON-LD skin-vector-2022 action-view">
<div class="mw-page-container">
<div class="mw-page-container-inner">
<div class="mw-content-container">
<main id="content" class="mw-body">
<header class="mw-body-header vector-page-titlebar">
<h1 id="firstHeading" class="firstHeading mw-first-heading"><span class="mw-page-title-main">JSON-LD</span></h1>
</header>
<a id="top"></a>
<div id="bodyContent" class="vector-body ve-init-mw-desktopArticleTarget-targetContainer" aria-labelledby="firstHeading" data-mw-ve-target-container="">
<div id="contentSub">
<div id="mw-content-subtitle"></div>
</div>
<div id="mw-content-text" class="mw-body-content mw-content-ltr" lang="de" dir="ltr"><div class="mw-content-ltr mw-parser-output" lang="de" dir="ltr">
<table class="infobox float-right toptextcells hintergrundfarbe1" id="vorlage-infobox-dateiformat" summary="Infobox Dateiformat" style="width:23em; margin: 0 0 1em 1em; border:solid 1px #BBBBBB; font-size: 90%; padding:2px;">
<tbody><tr>
<th colspan="2">JSON-LD
</th></tr>
<tr>
<td colspan="2" style="text-align:center;"><span typeof="mw:File"></span>
</td></tr>
<tr>
<td style="white-space: nowrap;"><a href="Dateinamenserweiterung" title="Dateinamenserweiterung">Dateiendung</a>:
</td>
<td><code style="margin:0.2em 0; padding:0;">.jsonld</code>
</td></tr>
<tr>
<td style="white-space:nowrap;"><a href="Internet_Media_Type" title="Internet Media Type">MIME-Type</a>:
</td>
<td><code style="margin:0.2em 0; padding:0;">application/ld+json</code>
</td></tr>
<tr>
<td style="white-space: nowrap;">Entwickelt von:
</td>
<td><a href="World_Wide_Web_Consortium" title="World Wide Web Consortium">World Wide Web Consortium</a> (W3C)
</td></tr>
<tr>
<td style="white-space: nowrap;">Aktuelle <a href="Version_(Software)" title="Version (Software)">Version</a>
</td>
<td>1.0 <br> (16. Januar 2014)
</td></tr>
<tr>
<td style="white-space: nowrap;">Art:
</td>
<td><a href="Abstrakte_Syntax" class="mw-redirect" title="Abstrakte Syntax">konkrete Syntax</a> von <a href="Resource_Description_Framework" title="Resource Description Framework">RDF</a>
</td></tr>
<tr>
<td style="white-space: nowrap;">Container für:
</td>
<td><a href="Linked_Data" class="mw-redirect" title="Linked Data">Linked Data</a>
</td></tr>
<tr>
<td style="white-space: nowrap;">Erweitert von:
</td>
<td><a href="JavaScript_Object_Notation" class="mw-redirect" title="JavaScript Object Notation">JSON</a>, <a href="Resource_Description_Framework" title="Resource Description Framework">RDF</a>
</td></tr>
<tr>
<td style="white-space: nowrap;vertical-align:top;"><a href="Standard" title="Standard">Standard(s)</a>:
</td>
<td><a rel="nofollow" class="external text" href="https://www.w3.org/TR/json-ld/">JSON-LD 1.0</a><br> <a rel="nofollow" class="external text" href="https://www.w3.org/TR/json-ld-api/">JSON-LD 1.0 Processing Algorithms and API</a> (W3C Recommendations)
</td></tr>
<tr>
<td colspan="2" class="hintergrundfarbe5" style="text-align:center;"><a rel="nofollow" class="external text" href="https://json-ld.org/">json-ld.org</a>
</td></tr>
<tr>
<td colspan="2" style="display:none">
<p>
</p>
</td></tr>
<tr>
<td colspan="2">
</td></tr></tbody></table>
<p><b>JSON-LD</b> (<a href="Akronym" title="Akronym">Akronym</a> von <a href="Englische_Sprache" title="Englische Sprache">englisch</a> für „<b>JSON</b>-basierte <a href="Serialisierung" title="Serialisierung">Serialisierung</a> für ver<b>L</b>inkte <b>D</b>aten“) bezeichnet Empfehlungen des <a href="World_Wide_Web_Consortium" title="World Wide Web Consortium">W3C</a>, <a href="Linked_Data" class="mw-redirect" title="Linked Data">weltweit verknüpfte Daten</a> (nach dem <a href="Resource_Description_Framework" title="Resource Description Framework">RDF</a>-Modell) im schlanken <a href="JavaScript_Object_Notation" class="mw-redirect" title="JavaScript Object Notation">JSON</a>-<a href="Datenformat" title="Datenformat">Format</a> einzubetten. Damit können <a href="Webservice" title="Webservice">Webservices</a> und <a href="Webapplikation" class="mw-redirect" title="Webapplikation">Webapplikationen</a>, die ihre <a href="Daten" title="Daten">Daten</a> bevorzugt in JSON austauschen, leichten Anschluss zum <a href="Semantic_Web" title="Semantic Web">Semantischen Web</a> finden und <a href="Interoperabilit%C3%A4t" title="Interoperabilität">reibungsloser zusammenarbeiten</a>, indem sie <a href="Globale_Variable" class="mw-redirect" title="Globale Variable">global</a> <a href="Kontrolliertes_Vokabular" title="Kontrolliertes Vokabular">eindeutige Bezeichnungen</a> für <a href="Ontologie_(Informatik)" title="Ontologie (Informatik)">logisch geordnete Begriffe</a> verwenden.
</p><p>Die Entwicklung begann 2010<sup id="cite_ref-linked-json_1-0" class="reference"><a href="#cite_note-linked-json-1"><span class="cite-bracket">[</span>1<span class="cite-bracket">]</span></a></sup> und führte im Januar 2014 zur Verabschiedung zweier Dokumente über die erste Version.<sup id="cite_ref-has-been-published_2-0" class="reference"><a href="#cite_note-has-been-published-2"><span class="cite-bracket">[</span>2<span class="cite-bracket">]</span></a></sup><sup id="cite_ref-json-ld_3-0" class="reference"><a href="#cite_note-json-ld-3"><span class="cite-bracket">[</span>3<span class="cite-bracket">]</span></a></sup><sup id="cite_ref-json-ld-api_4-0" class="reference"><a href="#cite_note-json-ld-api-4"><span class="cite-bracket">[</span>4<span class="cite-bracket">]</span></a></sup>
</p><p>Für die Industrie ist die Einbettung in das etablierte JSON interessant, weil sie so den zugehörigen Baukasten aus <a href="Parser" title="Parser">Parsern</a>, Speichern<sup id="cite_ref-5" class="reference"><a href="#cite_note-5"><span class="cite-bracket">[</span>5<span class="cite-bracket">]</span></a></sup> bzw. <a href="Datenbank" title="Datenbank">Datenbanken</a>,<sup id="cite_ref-6" class="reference"><a href="#cite_note-6"><span class="cite-bracket">[</span>6<span class="cite-bracket">]</span></a></sup> <a href="Programmiersprache" title="Programmiersprache">Programmiersprachen</a>-Anbindungen, sowie <a href="Know-how" title="Know-how">Know-how</a> u. ä. weiter verwenden könnte. Die Entwickler versuchten sich daran zu orientieren, wie JSON bisher zum Datenaustausch genutzt wird. Dadurch soll die <a href="Migration_(Informationstechnik)" title="Migration (Informationstechnik)">Umstellung</a> einer Software von JSON auf JSON-LD möglichst einfach sein.<sup id="cite_ref-3gen-web-apis_7-0" class="reference"><a href="#cite_note-3gen-web-apis-7"><span class="cite-bracket">[</span>7<span class="cite-bracket">]</span></a></sup> Hierzu kann es bereits ausreichen, einen ansonsten unveränderten JSON-Text mit einem sogenannten Kontext zu verknüpfen (siehe <a href="#Technik_und_Grundbegriffe_von_JSON-LD">Abschnitt <i>Technik und Grundbegriffe von JSON-LD</i></a>).
</p><p>Anwender von JSON-LD, welche hauptsächlich an herkömmlichem JSON interessiert sind, müssen <a href="Resource_Description_Framework" title="Resource Description Framework">RDF</a> nicht verstehen. Gleichzeitig stellt das Datenmodell von JSON-LD eine Erweiterung des RDF-Modells dar.<sup id="cite_ref-json-ld_3-1" class="reference"><a href="#cite_note-json-ld-3"><span class="cite-bracket">[</span>3<span class="cite-bracket">]</span></a></sup>
</p>
<div class="mw-heading mw-heading2"><h2 id="Abgrenzung_und_Einordnung"><span id="Merkbild"></span> Abgrenzung und Einordnung</h2></div>
<div class="thumb tleft" style="width: 17em; font-weight: bold;">
<pre>{
"@id": "<span style="color: #505AB0; font-family: sans-serif; font-style: italic;">Subjekt (IRI)</span>",
"<span style="color: #B35050; font-family: sans-serif; font-style: italic;">Prädikat (IRI)</span>": {
"@id": "<span style="color: #50B36E; font-family: sans-serif; font-style: italic;">Objekt (IRI)</span>"
},
"<span style="color: #B35050; font-family: sans-serif; font-style: italic;">Prädikat (IRI)</span>":
<span style="color: #50B36E; font-family: sans-serif; font-style: italic;">Objekt (Literal)</span>,
"<span style="color: #B35050; font-family: sans-serif; font-style: italic;">Prädikat (IRI)</span>": [
<span style="color: #50B36E; font-family: sans-serif; font-style: italic;">Objekt</span>, ...
]
}
</pre>
<div class="thumbcaption" style="font-weight:normal">
<p>Merkbild zur Einbettung der RDF-Tripel (farbig, kursiv) in JSON (schwarz)
</p>
</div>
</div>
<p>JSON-LD verhält sich zu JSON ähnlich, wie sich <a href="RDFa" title="RDFa">RDFa</a>, <a href="HTML_Microdata" class="mw-redirect" title="HTML Microdata">HTML Microdata</a> bzw. ein <a href="Microformat" class="mw-redirect" title="Microformat">Microformat</a> jeweils zu <a href="Hypertext_Markup_Language" title="Hypertext Markup Language">HTML</a> verhält: Programme, welche herkömmliches JSON erwarten (hier das Trägerformat), werden durch die Erweiterung zu JSON-LD praktisch nicht beeinträchtigt. Gleichzeitig gestattet es ebenso die Anreicherung um (maschinell interpretierbare) Bedeutung wie die anderen Verfahren (<a href="Annotation#Semantische_Annotationen" title="Annotation">semantische Annotation</a>).
</p><p>Ein wesentlicher Unterschied besteht darin, dass JSON keine <a href="Auszeichnungssprache" title="Auszeichnungssprache">Markup</a>-Sprache zur Präsentation von Inhalten wie HTML ist (und durch JSON-LD auch zu keiner wird): Eine dem Durchschnittsnutzer präsentable Darstellung des Inhalts müsste entweder erst gewonnen oder in einem anderen Format beigefügt werden. Dies hat neben der Kreation eines weiteren Formats für das <a href="Semantic_Web" title="Semantic Web">Semantic Web</a> vereinzelt zu Kritik geführt.<sup id="cite_ref-8" class="reference"><a href="#cite_note-8"><span class="cite-bracket">[</span>8<span class="cite-bracket">]</span></a></sup>
</p><p>Der traditionelle Einsatzort von JSON ist jedoch nicht die <a href="Mensch-Maschine-Schnittstelle" class="mw-redirect" title="Mensch-Maschine-Schnittstelle">Schnittstelle zwischen Mensch und Maschine</a>, sondern die zwischen Maschinen untereinander. Die Trennung von (typographischem) Markup und semantischen Daten kann sogar eine Vereinfachung darstellen. JSON ersetzt hierbei <a href="Extensible_Markup_Language" title="Extensible Markup Language">XML</a> abseits von <a href="Extensible_Hypertext_Markup_Language" title="Extensible Hypertext Markup Language">XHTML</a>. XML-<a href="Parser" title="Parser">Parser</a>,<sup id="cite_ref-rdf-in-json_9-0" class="reference"><a href="#cite_note-rdf-in-json-9"><span class="cite-bracket">[</span>9<span class="cite-bracket">]</span></a></sup> <a href="Graphdatenbank" title="Graphdatenbank">RDF-Speicher</a> und <a href="SPARQL" title="SPARQL">SPARQL</a>-Maschinerie<sup id="cite_ref-json-ld-origins-2_10-0" class="reference"><a href="#cite_note-json-ld-origins-2-10"><span class="cite-bracket">[</span>10<span class="cite-bracket">]</span></a></sup> werden im Web-Umfeld zuweilen als „<a href="Overhead_(EDV)" title="Overhead (EDV)">Overhead</a>“ empfunden. Selbst handliche Formate aus dem RDF-Umfeld (wie <a href="Turtle_(Syntax)" title="Turtle (Syntax)">Turtle</a>) werden kaum als Basisformat in Web-<a href="Kommunikationsprotokoll" title="Kommunikationsprotokoll">Protokollen</a> genutzt. JSON-LD soll Probleme lösen, die sich mit den anderen Formaten nicht lösen ließen.<sup id="cite_ref-json-ld-is-the-bees-knees_11-0" class="reference"><a href="#cite_note-json-ld-is-the-bees-knees-11"><span class="cite-bracket">[</span>11<span class="cite-bracket">]</span></a></sup>
</p><p>Im Gegensatz zu anderen <a href="Serialisierung" title="Serialisierung">Serialisierungsformaten</a> für <a href="Linked_Data" class="mw-redirect" title="Linked Data">Linked Data</a> bzw. <a href="Resource_Description_Framework" title="Resource Description Framework">RDF</a>, die <a href="Tupel" title="Tupel">Tripel</a>-orientiert sind, bleibt JSON-LD auch in seiner flachen Vorzugsform <a href="Entit%C3%A4t_(Informatik)" title="Entität (Informatik)">Entität</a>-zentriert:<sup id="cite_ref-3gen-web-apis_7-1" class="reference"><a href="#cite_note-3gen-web-apis-7"><span class="cite-bracket">[</span>7<span class="cite-bracket">]</span></a></sup> Alle ausgehenden Prädikatskanten des Graphen sind nach dem RDF-Subjekt gruppiert und alle RDF-Objekte nach Subjekt und Prädikat.<sup id="cite_ref-12" class="reference"><a href="#cite_note-12"><span class="cite-bracket">[</span>12<span class="cite-bracket">]</span></a></sup><sup id="cite_ref-13" class="reference"><a href="#cite_note-13"><span class="cite-bracket">[</span>13<span class="cite-bracket">]</span></a></sup>
</p><p>Gemeinsam mit TriG und N-Quads, sowie im Unterschied zu <a href="Turtle_(Syntax)" title="Turtle (Syntax)">Turtle</a> unterstützt JSON-LD mehrere (benannte) Graphen (RDF datasets).<sup id="cite_ref-14" class="reference"><a href="#cite_note-14"><span class="cite-bracket">[</span>14<span class="cite-bracket">]</span></a></sup> Im Gegensatz zu N-Triples und N-Quads, sowie gemeinsam mit Turtle ist es nicht auf eine flache Tupel-Repräsentation festgelegt. Anders als RDFa bzw. RDF/XML ist es nicht (X)HTML bzw. nicht XML-basiert.
</p><p>JSON-LD beinhaltet (gegenüber JSON) eine Standardkonvention, um mittels <a href="Internationalized_Resource_Identifier" title="Internationalized Resource Identifier">IRIs</a> (externe) Referenzen bzw. einfache Links darzustellen (ähnlich Erweiterungen wie JSON Reference,<sup id="cite_ref-draftpbryan-zyp-json-ref-03_15-0" class="reference"><a href="#cite_note-draftpbryan-zyp-json-ref-03-15"><span class="cite-bracket">[</span>15<span class="cite-bracket">]</span></a></sup> jedoch ohne die Interpretation des <a href="Fragmentbezeichner" title="Fragmentbezeichner">Fragmentbezeichners</a> als JSON Pointer; JSON-LD folgt hier RDF-Gepflogenheiten<sup id="cite_ref-rdf11-concepts_16-0" class="reference"><a href="#cite_note-rdf11-concepts-16"><span class="cite-bracket">[</span>16<span class="cite-bracket">]</span></a></sup>). Außerdem kann es standardisiert Datentypen und Schema-Informationen aus dem RDF-Umfeld einbinden. (Anders als <a href="JavaScript_Object_Notation#JSON_Schema" class="mw-redirect" title="JavaScript Object Notation">JSON Schema</a><sup id="cite_ref-17" class="reference"><a href="#cite_note-17"><span class="cite-bracket">[</span>17<span class="cite-bracket">]</span></a></sup> setzt es dabei nicht auf gesonderte bzw. JSON-spezifische Verfahren. Eine <a href="Datenvalidierung" title="Datenvalidierung">Prüfung</a> mittels JSON Schema ist jedoch nicht ausgeschlossen.<sup id="cite_ref-18" class="reference"><a href="#cite_note-18"><span class="cite-bracket">[</span>18<span class="cite-bracket">]</span></a></sup>)
</p><p>Zwar stellt JSON-LD selbst keine eigene Sprache für (<a href="Hypertext_Markup_Language" title="Hypertext Markup Language">HTML</a>-freie) <a href="Hypertext" title="Hypertext">Hypertext</a>- bzw. <a href="Hypertext_Transfer_Protocol" title="Hypertext Transfer Protocol">HTTP</a>-Anwendungen (im <a href="Representational_State_Transfer" title="Representational State Transfer">REST</a>-Stil) zur Verfügung (wie etwa JSON HAL<sup id="cite_ref-draft-kelly-json-hal-06_19-0" class="reference"><a href="#cite_note-draft-kelly-json-hal-06-19"><span class="cite-bracket">[</span>19<span class="cite-bracket">]</span></a></sup> oder JSON Hyper-Schema). Eine solche ist jedoch über entsprechende Vokabulare zur Dienst- bzw. <a href="Schnittstellenbeschreibung" class="mw-redirect" title="Schnittstellenbeschreibung">Schnittstellenbeschreibung</a> einbindbar. Siehe auch: <a href="#Im_Bereich_der_Web-APIs">Abschnitt <i>Im Bereich der Web-APIs</i></a>.
</p><p>JSON-LD ist nicht <a href="Kompatibilit%C3%A4t_(Technik)" title="Kompatibilität (Technik)">kompatibel</a> mit (dem älteren) RDF/JSON. Siehe auch: <a href="#Vorgänger_und_Alternativen">Abschnitt <i>Vorgänger und Alternativen</i></a>.
</p>
<div class="mw-heading mw-heading3"><h3 id="Syntax">Syntax</h3></div>
<p>Bezüglich der <a href="Syntax" title="Syntax">Syntax</a> von <a href="JavaScript_Object_Notation" class="mw-redirect" title="JavaScript Object Notation">JSON</a> gilt:
</p>
<div class="Vorlage_Zitat" style="margin:1em 40px;">
<div style="margin:1em 0;"><blockquote style="margin:0;">
<p>„Jeder JSON-LD-Text ist ein gültiger JSON-Text“<sup id="cite_ref-20" class="reference"><a href="#cite_note-20"><span class="cite-bracket">[</span>20<span class="cite-bracket">]</span></a></sup>
</p>
</blockquote>
</div></div>
<p>Welche JSON-Texte umgekehrt auch gültiges JSON-LD darstellen, ist Gegenstand hauptsächlich des ersten Dokuments.<sup id="cite_ref-json-ld_3-2" class="reference"><a href="#cite_note-json-ld-3"><span class="cite-bracket">[</span>3<span class="cite-bracket">]</span></a></sup> Ein JSON-LD-Text muss u. a.
</p>
<ul><li>ein JSON-Objekt sein oder</li>
<li>ein JSON-Array aus solchen Objekten</li></ul>
<p>(während neuere Fassungen von JSON bzw. JSON-Parser hier auch andere JSON-Werte erlauben.)
</p><p>Alle Namen bzw. Schlüssel der Name-Wert-Paare <i>müssen</i> <b>pro Objekt eindeutig</b> sein (was bei JSON nach IETF nur so sein <i>sollte</i> und nach ECMA von der Auslegung abhängt). Außerdem muss auf die leere Zeichenkette als Name verzichtet werden, weil nicht alle JSON-Implementierungen diese handhaben können.
</p><p>Alle weiteren Syntax-Elemente von JSON-LD werden über spezielle JSON-Strings realisiert (sogenannte <b><a href="Schl%C3%BCsselwort_(Programmierung)" title="Schlüsselwort (Programmierung)">Schlüsselwörter</a></b>), die mit dem Zeichen „<a href="%40" class="mw-redirect" title="@">@</a>“ beginnen und von denen es bisher dreizehn gibt (@context, @id, @value, @language, @type, @container, @list, @set, @reverse, @index, @base, @vocab, @graph). Im Hinblick auf spätere Erweiterungen wird empfohlen, andere Namen mit diesem Anfang u. a. als JSON-Name (bzw. -Schlüssel) zu vermeiden. Solche haben aber bis dahin keine spezielle Bedeutung.
</p><p>Eine besondere Bedeutung kommt dem „:“ in Zeichenketten an bestimmten Stellen zu (wodurch sie kontextabhängig als kompakte <a href="Internationalized_Resource_Identifier" title="Internationalized Resource Identifier">IRIs</a> oder als absolute IRIs interpretiert werden können, solange eine benutzerdefinierte Definition für die Zeichenkette als Ganzes dies nicht außer Kraft setzt).
</p><p>Grundsätzlich spielt die Reihenfolge der Paare keine Rolle. Das spezielle Paar mit dem Namen <b>@context</b> sollte am Anfang stehen, wenn man in Zukunft auch effizientere <a href="Datenstrom" title="Datenstrom">Datenstrom</a>-<a href="Parser" title="Parser">Parser</a> unterstützen möchte (welche eine Expansion so bereits während des Lesens durchführen könnten).
</p><p>Die darauf basierende <a href="Formale_Grammatik" title="Formale Grammatik">Grammatik</a> umfasst verschiedene Typen von JSON-Objekten (node object, value object, list object, set object, language map, index map und context definition).
</p><p>Die grundlegenden und fortgeschrittenen Konzepte von JSON-LD werden in nicht <a href="Normativ" title="Normativ">normativen</a> Abschnitten anhand von Beispielen eingeführt. Die formalste Definition besteht aus über achtzig normativen Sätzen in englischer Sprache. Formalismen wie <a href="Erweiterte_Backus-Naur-Form" title="Erweiterte Backus-Naur-Form">EBNF</a> oder <a href="Syntaxdiagramm" title="Syntaxdiagramm">Syntaxdiagramme</a> werden nicht angewendet. Es wird keine Sprache von Grund auf neu entworfen. JSON-LD bezieht sich auf die Grammatiken der <a href="Internet_Engineering_Task_Force" title="Internet Engineering Task Force">IETF</a> aus RFC 4627 (JSON),<sup id="cite_ref-21" class="reference"><a href="#cite_note-21"><span class="cite-bracket">[</span>21<span class="cite-bracket">]</span></a></sup> RFC 3987 (IRIs),<sup id="cite_ref-22" class="reference"><a href="#cite_note-22"><span class="cite-bracket">[</span>22<span class="cite-bracket">]</span></a></sup> BCP47 alias RFC 5646<sup id="cite_ref-23" class="reference"><a href="#cite_note-23"><span class="cite-bracket">[</span>23<span class="cite-bracket">]</span></a></sup> (Sprachkennzeichen, language tags, siehe auch: <a href="ISO_639" title="ISO 639">ISO 639</a>).
</p>
<div class="mw-heading mw-heading2"><h2 id="Ausgangspunkt_und_Grundlagen">Ausgangspunkt und Grundlagen</h2></div>
<p>Bei der <a href="Formale_Semantik" title="Formale Semantik">maschinellen Interpretation</a> von <a href="Daten#Informatik" title="Daten">Daten</a>, hier im JSON-Format, werden grundlegende Fragen der <a href="Semantik" title="Semantik">Bedeutungswissenschaft</a> berührt. Menschen können diese nachvollziehen, wenn man hierzu <a href="Zeichenkette" title="Zeichenkette">Zeichenketten</a> präsentiert, mit denen die meisten Leser keine Bedeutung verbinden können (wie die Wörter einer fremden Sprache).
</p>
<div class="mw-highlight mw-highlight-lang-javascript mw-content-ltr" dir="ltr"><pre><span></span><span class="p">{</span>
<span class="w"> </span><span class="s2">"xfvhgr"</span><span class="o">:</span><span class="w"> </span><span class="s2">"bzmxmhfg"</span><span class="p">,</span>
<span class="w"> </span><span class="s2">"ozwqrsmm"</span><span class="o">:</span><span class="w"> </span><span class="s2">"1879-03-14"</span>
<span class="p">}</span>
</pre></div>
<p>Selbst wer das <a href="JavaScript_Object_Notation" class="mw-redirect" title="JavaScript Object Notation">JSON</a>-Format lesen kann, wird hier nur dessen Elemente erkennen, wie die Paare aus Namen und Werten. Eine inhaltliche <a href="Bedeutung_(Sprachphilosophie)" title="Bedeutung (Sprachphilosophie)">Bedeutung</a> oder gar <a href="Aussage" title="Aussage">Aussage</a> kann er damit nicht verbinden.
</p><p>Einer Maschine ginge es (stellvertretend für ihren Programmierer) dabei zunächst nicht viel anders: Ohne (einem maschinenlesbaren) „<a href="W%C3%B6rterbuch" title="Wörterbuch">Wörterbuch</a>“ oder „<a href="Lexikon" title="Lexikon">Lexikon</a>“ mit passenden Einträgen ist eine <a href="Deutung" title="Deutung">Deutung</a> technisch offenbar schwer erklärbar. (Bei der <a href="Kommunikation" title="Kommunikation">Kommunikation</a> von Maschinen wäre weiter anzunehmen, dass die Teilnehmer sich in jeder Situation auf dasselbe Wörterbuch verständigt hätten, siehe auch: <a href="Kontextualisierung" title="Kontextualisierung">Kontextualisierung</a> und <a href="Kontext_(Sprachwissenschaft)" title="Kontext (Sprachwissenschaft)">Kontext</a>. Außerdem wäre ein primitives Basisvokabular vorauszusetzen, dessen Bedeutung bei den Teilnehmern (durch <a href="Konstruieren_(Technik)" title="Konstruieren (Technik)">Konstruktion</a>, <a href="Evolution" title="Evolution">Evolution</a> oder <a href="Sozialisation" title="Sozialisation">Sozialisation</a> auf niederer oder <a href="Kognitiv" class="mw-redirect" title="Kognitiv">kognitiver</a> Ebene) bereits verankert ist.)
</p><p><a href="Bezeichner" title="Bezeichner">Bezeichner</a>, mit denen nicht zumindest die meisten <a href="Softwareentwickler" title="Softwareentwickler">Softwareentwickler</a> etwas verbinden können, sind zwar untypisch. (Häufig verwendet werden <a href="Lexem" title="Lexem">Lexeme</a> des Englischen.) Dennoch gibt es auch bei verständlichen bzw. selbstsprechenden Bezeichnern oft noch mehrere Alternativen für „dasselbe“ (<a href="Synonymie" class="mw-redirect" title="Synonymie">Synonymie</a>) und Raum für Fehlinterpretationen aufgrund von <a href="Mehrdeutigkeit" title="Mehrdeutigkeit">Mehrdeutigkeiten</a> (siehe auch: <a href="Homonym" title="Homonym">Homonym</a> bzw. <a href="Polysemie" title="Polysemie">Polysemie</a>, sowie <a href="Disambiguierung" title="Disambiguierung">Disambiguierung</a>).
</p><p>Eine technische Lösung besteht u. a. darin, möglichst nur noch global eindeutige Bezeichner zu verwenden (hier: <a href="Internationalized_Resource_Identifier" title="Internationalized Resource Identifier">IRIs</a>) bzw. alle anderen in solche zu übersetzen. Ein Rahmenwerk hierzu bietet <a href="Resource_Description_Framework" title="Resource Description Framework">RDF</a> bereits. Ein Verfahren, dies in JSON nutzen zu können, wurde durch JSON-LD nun im technischen Detail <a href="Normung" title="Normung">normiert</a>.
</p>
<div class="mw-heading mw-heading3"><h3 id="Von_JSON_zu_JSON-LD">Von JSON zu JSON-LD</h3></div>
<p>JSON ist zunehmend in den <a href="Programmierschnittstelle" title="Programmierschnittstelle">APIs</a> verbreiteter <a href="Webservice" title="Webservice">Webservices</a> anzutreffen, wie denen von <a href="Google_LLC" title="Google LLC">Google</a>, <a href="Twitter" class="mw-redirect" title="Twitter">Twitter</a>, <a href="Facebook" title="Facebook">Facebook</a> und vielen anderen.
</p><p>JSON-Objekte bestehen aus Paaren von Namen<sup id="cite_ref-24" class="reference"><a href="#cite_note-24"><span class="cite-bracket">[</span>24<span class="cite-bracket">]</span></a></sup> und Werten. Dabei wird oft dieselbe Information – wie ein Geburtsdatum – durch unterschiedliche Namen wie etwa „born“, „born_on“, „dateOfBirth“, „DOB“ oder „дата рождения“ angesprochen. Bei der Zusammenführung durch einen übergreifenden Dienst (z. B. im Rahmen eines <a href="Mashup_(Internet)" title="Mashup (Internet)">Semantic Mashups</a>) fehlt ein Verzeichnis oder Wörterbuch, wie eine bestimmte Information in JSON-Nachrichten bzw. -Dokumenten aus den verschiedenen Quellen identifizierbar wäre.
</p><p>Zwar könnte jeder, der mit mehreren Quellen arbeitet, für sich ein solches Verzeichnis erstellen, pflegen und fest mit seiner Software verbinden. Es wäre jedoch praktischer, wenn alle Datenlieferanten ihre JSON-Daten explizit mit einer maschinenlesbaren „Interpretationshilfe“ (ebenfalls in JSON) verknüpfen würden (Selbstbeschreibung). Auch wenn diese Zusatzinformation nicht von den Datenquellen stammt oder nur eine einzige Quelle zur Disposition stünde, müsste sie bei der Verarbeitung von JSON-Daten irgendwie eingebracht werden können.
</p>
<div class="mw-heading mw-heading3"><h3 id="Technik_und_Grundbegriffe_von_JSON-LD">Technik und Grundbegriffe von JSON-LD</h3></div>
<p>In JSON-LD kann diese Hilfe bei der Deutung nun durch den speziellen Namen bzw. das <b><a href="Schl%C3%BCsselwort_(Programmierung)" title="Schlüsselwort (Programmierung)">Schlüsselwort</a> @context</b> geleistet werden:
</p><p><span id="erstes_Beispiel"></span>
</p>
<div class="mw-highlight mw-highlight-lang-javascript mw-content-ltr" dir="ltr"><pre><span></span><span class="p">{</span>
<span class="hll"><span class="w"> </span><span class="s2">"@context"</span><span class="o">:</span><span class="w"> </span><span class="p">{</span>
</span><span class="hll"><span class="w"> </span><span class="s2">"born"</span><span class="o">:</span><span class="w"> </span><span class="s2">"http://schema.org/birthDate"</span>
</span><span class="hll"><span class="w"> </span><span class="p">},</span>
</span><span class="w"> </span><span class="s2">"born"</span><span class="o">:</span><span class="w"> </span><span class="s2">"1879-03-14"</span>
<span class="p">}</span>
</pre></div>
<p>Dies sagt einem <a href="Computerprogramm" title="Computerprogramm">Computerprogramm</a> (welches diesen Text als JSON <a href="Parser" title="Parser">parst</a> und als JSON-LD interpretiert), dass der Wert mit dem Namen „born“ verbindlich im Sinne des „birthDate“ aus dem <a href="Schema.org" title="Schema.org">Schema.org</a>-Vokabular zu verstehen ist (also als Kalenderdatum der Geburt einer Person). Für eine herkömmliche JSON-Anwendung, welche den Kontext nicht beachtet, ändert sich praktisch nichts. Sie verwendet weiterhin ihre fest eingebaute Interpretation für diese Datenquelle.
</p><p>Zu weiteren Möglichkeiten, JSON-Daten in einen solchen Kontext zu stellen (<a href="Kontextualisierung" title="Kontextualisierung">Kontextualisierung</a>), siehe auch <a href="#Alternative_Kontextualisierung">Abschnitt <i>Alternative Kontextualisierung</i></a>.
</p><p>An der Interpretation ändert sich für eine JSON-LD-Anwendung auch nichts, wenn man durchgängig den <b>Term</b> „born“ durch „birthdate“ ersetzen würde, weil er weiter zum selben <a href="Internationalized_Resource_Identifier" title="Internationalized Resource Identifier">IRI</a> von Schema.org übersetzt wird bzw. „expandiert“.
</p><p>Die Bedeutung eines solchen Dokuments wird deutlicher in der sogenannten <b>expandierten</b> (und hier zusätzlich flachen) Form, welche eine kontextunabhängige Verarbeitung gestattet (siehe auch: <a href="#Algorithmen_und_Formen">Abschnitt <i>Algorithmen und Formen</i></a>).
</p>
<div class="mw-highlight mw-highlight-lang-javascript mw-content-ltr" dir="ltr"><pre><span></span><span class="p">[</span>
<span class="w"> </span><span class="p">{</span>
<span class="w"> </span><span class="s2">"@id"</span><span class="o">:</span><span class="w"> </span><span class="s2">"_:b0"</span><span class="p">,</span>
<span class="w"> </span><span class="s2">"http://schema.org/birthDate"</span><span class="o">:</span><span class="w"> </span><span class="p">[</span>
<span class="w"> </span><span class="p">{</span>
<span class="w"> </span><span class="s2">"@value"</span><span class="o">:</span><span class="w"> </span><span class="s2">"1879-03-14"</span>
<span class="w"> </span><span class="p">}</span>
<span class="w"> </span><span class="p">]</span>
<span class="w"> </span><span class="p">}</span>
<span class="p">]</span>
</pre></div>
<p>Hierbei wurden alle im Kontext definierten Namen wie „born“ zu einem absoluten <a href="Internationalized_Resource_Identifier" title="Internationalized Resource Identifier">IRI</a> expandiert (und außerdem alle Werte bzw. <a href="Literal" title="Literal">Literale</a> durch ein explizites Wert-Objekt mit dem Schlüsselwort <b>@value</b> ersetzt, alle einzelnen Literale und Knoten-Objekte zu (einelementigen) JSON-Arrays vereinheitlicht, sowie alle Knoten-Objekte ohne <b>@id</b>-Element mit einer lokalen ID versehen; siehe auch: <a href="#Algorithmen_und_Formen">Abschnitt <i>Algorithmen und Formen</i></a>). In dieser Form ließen sich auch Daten, die ursprünglich in unterschiedlichen Kontexten standen, einheitlich verarbeiten, ohne dass es zu Fehlinterpretationen käme.
</p><p>Der in diesem Dokument enthaltene RDF-Graph aus zwei Knoten und einer Kante macht in etwa die Aussage: „Jemand (oder etwas) (mit der dokument-lokalen <a href="Identifikator" title="Identifikator">ID</a> ‚_:b0‘) wurde (im Sinne von Schema.org) am 14. März 1879 geboren.“
</p><p>Anonyme und untypisierte Knoten sind manchmal nicht ausreichend. Möglich sind mittels IRI global <b>eindeutig benannte</b> und (mittels <b>Schlüsselwort „@type“</b>) typisierte <a href="Entit%C3%A4t_(Informatik)" title="Entität (Informatik)">Entitäten</a> bzw. <a href="Literal" title="Literal">Literale</a>. Im Folgenden wird einer Person (im Sinne von <a href="FOAF" title="FOAF">FOAF</a>) „Albert Einstein“ (im Sinne der <a href="DBpedia" title="DBpedia">DBpedia</a>) ein Geburtsdatum (im Sinne von <a href="Schema.org" title="Schema.org">Schema.org</a> und in der Schreibweise nach <a href="XML_Schema" title="XML Schema">XML Schema</a>) zugeschrieben.
</p>
<div class="mw-highlight mw-highlight-lang-javascript mw-content-ltr" dir="ltr"><pre><span></span><span class="p">{</span>
<span class="w"> </span><span class="s2">"@context"</span><span class="o">:</span><span class="w"> </span><span class="p">{</span>
<span class="w"> </span><span class="s2">"Person"</span><span class="o">:</span><span class="w"> </span><span class="s2">"http://xmlns.com/foaf/0.1/Person"</span><span class="p">,</span>
<span class="w"> </span><span class="s2">"xsd"</span><span class="o">:</span><span class="w"> </span><span class="s2">"http://www.w3.org/2001/XMLSchema#"</span><span class="p">,</span>
<span class="w"> </span><span class="s2">"born"</span><span class="o">:</span><span class="w"> </span><span class="p">{</span>
<span class="w"> </span><span class="s2">"@id"</span><span class="o">:</span><span class="w"> </span><span class="s2">"http://schema.org/birthDate"</span><span class="p">,</span>
<span class="hll"><span class="w"> </span><span class="s2">"@type"</span><span class="o">:</span><span class="w"> </span><span class="s2">"xsd:date"</span>
</span><span class="w"> </span><span class="p">},</span>
<span class="w"> </span><span class="p">},</span>
<span class="hll"><span class="w"> </span><span class="s2">"@id"</span><span class="o">:</span><span class="w"> </span><span class="s2">"http://dbpedia.org/resource/Albert_Einstein"</span><span class="p">,</span>
</span><span class="hll"><span class="w"> </span><span class="s2">"@type"</span><span class="o">:</span><span class="w"> </span><span class="s2">"Person"</span><span class="p">,</span>
</span><span class="w"> </span><span class="s2">"born"</span><span class="o">:</span><span class="w"> </span><span class="s2">"1879-03-14"</span>
<span class="p">}</span>
</pre></div>
<p>„xsd:date“ ist ein Beispiel für einen <b>kompakten IRI</b>, der hier zur Abkürzung von
</p>
<dl><dd><code><a rel="nofollow" class="external free" href="https://www.w3.org/2001/XMLSchema#date">https://www.w3.org/2001/XMLSchema#date</a></code></dd></dl>
<p>dient. Er besteht aus einem Term vor dem Doppelpunkt (<a href="Pr%C3%A4fix" title="Präfix">Präfix</a>-Term), der qua Kontext zu einem absoluten IRI expandieren muss, und dem Rest danach (<a href="Suffix" title="Suffix">Suffix</a>), der unverändert daran angehängt wird. (Beachtenswert ist hierbei: Wenn das Präfix undefiniert ist, dann <i>ist</i> der Ausdruck wegen des Doppelpunktes bereits ein absoluter IRI.)<sup id="cite_ref-25" class="reference"><a href="#cite_note-25"><span class="cite-bracket">[</span>25<span class="cite-bracket">]</span></a></sup>
</p><p><a href="Ontologie_(Informatik)" title="Ontologie (Informatik)">Ontologien</a> werden normalerweise nicht unbegründet gemischt. Generell wird zur Sparsamkeit geraten. (Für manche Anwendungen oder <a href="Problemdom%C3%A4ne" title="Problemdomäne">Anwendungsbereiche</a> (soziale Netzwerke, Bibliotheken, Bezahlsysteme usw.) werden extra welche entworfen.) Die durchgängige Verwendung eines einzelnen bzw. eines Hauptvokabulars lässt sich mit dem Schlüsselwort <b>@vocab</b> abkürzen. Alle Terme, die nicht anders definiert sind, werden dann aus diesem stammend interpretiert (<a href="Voreinstellung" title="Voreinstellung">Default</a>-Präfix).
</p>
<div class="mw-highlight mw-highlight-lang-javascript mw-content-ltr" dir="ltr"><pre><span></span><span class="p">{</span>
<span class="w"> </span><span class="s2">"@context"</span><span class="o">:</span><span class="w"> </span><span class="p">{</span>
<span class="hll"><span class="w"> </span><span class="s2">"@vocab"</span><span class="o">:</span><span class="w"> </span><span class="s2">"http://schema.org/"</span>
</span><span class="w"> </span><span class="p">},</span>
<span class="w"> </span><span class="s2">"birthDate"</span><span class="o">:</span><span class="w"> </span><span class="s2">"1879-03-14"</span>
<span class="p">}</span>
</pre></div>
<p>Dies hat jedoch die Nebenwirkung, dass nun alle Terme, die im Kontext nicht explizit „null“ definiert sind, als Term aus diesem Vokabular aufgefasst werden. Ohne „@vocab“ würden die JSON-Werte von Termen ohne explizite Definition im Kontext hingegen in der JSON-LD-Sicht auf die Daten ausgeblendet werden.
</p><p>JSON-LD gestattet sogenanntes <b>Schlüsselwort-<a href="Aliasing" title="Aliasing">Aliasing</a></b>: Ein Term kann auch zu einem Schlüsselwort wie „@type“ oder „@id“ expandieren (nicht jedoch zu „@context“). Verwendet ein Web-Service z. B. bereits den Namen „is_a“ zur Typisierung und „oid“ zur Identifizierung der Objekte (durch JSON-Strings, keine Zahlen), kann dies folgendermaßen explizit bzw. deutlich gemacht werden:
</p>
<div class="mw-highlight mw-highlight-lang-javascript mw-content-ltr" dir="ltr"><pre><span></span><span class="p">{</span>
<span class="w"> </span><span class="s2">"@context"</span><span class="o">:</span><span class="w"> </span><span class="p">{</span>
<span class="w"> </span><span class="s2">"Person"</span><span class="o">:</span><span class="w"> </span><span class="s2">"http://xmlns.com/foaf/0.1/Person"</span><span class="p">,</span>
<span class="hll"><span class="w"> </span><span class="s2">"oid"</span><span class="o">:</span><span class="w"> </span><span class="s2">"@id"</span><span class="p">,</span>
</span><span class="hll"><span class="w"> </span><span class="s2">"is_a"</span><span class="o">:</span><span class="w"> </span><span class="s2">"@type"</span>
</span><span class="w"> </span><span class="p">},</span>
<span class="w"> </span><span class="s2">"oid"</span><span class="o">:</span><span class="w"> </span><span class="s2">"http://de.wikipedia.org/wiki/Albert_Einstein"</span><span class="p">,</span>
<span class="w"> </span><span class="s2">"is_a"</span><span class="o">:</span><span class="w"> </span><span class="s2">"Person"</span>
<span class="p">}</span>
</pre></div>
<p>JSON-Anwendungen, die dem Kontext keine Beachtung schenken, blieben davon wieder unberührt.
</p><p>Nicht demonstriert wurden u. a. Mittel zur <b>Sprachmarkierung</b> und <b><a href="Internationalisierung_(Softwareentwicklung)" title="Internationalisierung (Softwareentwicklung)">Mehrsprachigkeit</a></b> von Zeichenketten, <b>Listen</b> (Container), <b>Indexierung</b>, <b>benannte Graphen</b>, <b>relative IRIs</b> und <b>Basis-IRI</b>, <b>umgekehrte Eigenschaften</b>.
</p>
<div class="mw-heading mw-heading3"><h3 id="Alternative_Kontextualisierung">Alternative Kontextualisierung</h3></div>
<p>Der Kontext muss nicht direkt eingebettet, sondern kann auch <i>per <a href="Internationalized_Resource_Identifier" title="Internationalized Resource Identifier">IRI</a> referenziert</i> werden:
</p>
<div class="mw-highlight mw-highlight-lang-javascript mw-content-ltr" dir="ltr"><pre><span></span><span class="p">{</span>
<span class="hll"><span class="w"> </span><span class="s2">"@context"</span><span class="o">:</span><span class="w"> </span><span class="s2">"http://example.com/person.jsonld"</span><span class="p">,</span>
</span><span class="w"> </span><span class="s2">"born"</span><span class="o">:</span><span class="w"> </span><span class="s2">"1879-03-14"</span>
<span class="p">}</span>
</pre></div>
<p>Würde man den Inhalt des <a href="#erstes_Beispiel">ersten Beispiels</a> (bis auf die vorletzte Zeile) in einer Datei namens „person.jsonld“ ablegen und unter dieser <a href="Uniform_Resource_Locator" title="Uniform Resource Locator">URL</a> bereitstellen, führte dies zur selben Interpretation.
</p><p>Entscheidend für die reibungslose Funktion ist, dass die <a href="Uniform_Resource_Locator" title="Uniform Resource Locator">URL</a> tatsächlich zu einem Kontext gemäß JSON-LD führt, dieser also idealerweise per <a href="Hypertext_Transfer_Protocol" title="Hypertext Transfer Protocol">HTTP</a> im JSON-LD-Format ladbar ist (oder zumindest einmal war).<sup id="cite_ref-26" class="reference"><a href="#cite_note-26"><span class="cite-bracket">[</span>26<span class="cite-bracket">]</span></a></sup>
</p><p>Alternativ kann der Kontext auch außerhalb des eigentlichen JSON-Textes hergestellt werden.
</p><p>Speziell vorgesehen ist dies durch den <a href="Liste_der_HTTP-Headerfelder#Link" title="Liste der HTTP-Headerfelder">Link-Header</a> <i>in einer <a href="Hypertext_Transfer_Protocol" title="Hypertext Transfer Protocol">HTTP</a>-Nachricht</i> (mit spezieller Link-Relation aus dem JSON-LD-Namensraum<sup id="cite_ref-27" class="reference"><a href="#cite_note-27"><span class="cite-bracket">[</span>27<span class="cite-bracket">]</span></a></sup>). In die eigentlichen Applikationsdaten bräuchte so nicht eingegriffen zu werden, was die <a href="Migration_(Informationstechnik)" title="Migration (Informationstechnik)">Migration</a> erleichtern kann. Die contextURL aus dem Link-Header wird nur beachtet bei einem Inhaltstyp „application/[...+]json“ ungleich „application/ld+json“. Mehr dazu im <a href="#Anforderung_von_JSON-LD">Abschnitt <i>Anforderung von JSON-LD</i></a>.
</p><p>Des Weiteren bietet die <a href="Programmierschnittstelle" title="Programmierschnittstelle">Programmierschnittstelle</a> dazu einen <i>optionalen Parameter</i> (option expandContext, siehe: <a href="#API">Abschnitt <i>API</i></a>).
</p><p>Ein Kontext kann in jedem JSON-Objekt (außer in Kontext-Definitionen selbst) vorkommen, nicht nur im äußeren. Nicht weiter erläutert wurden hier u. a. die Kombination bzw. <a href="Akkumulation_(Wirtschaft)" title="Akkumulation (Wirtschaft)">Akkumulation</a> von Kontexten durch <i>Schachtelung</i> in der JSON-Struktur, sowie durch <i>Reihung</i> in Form eines JSON-Arrays. Außerdem gibt es <i>leere Kontexte</i>, um eine Kombinationskette zu unterbrechen.
</p>
<div class="mw-heading mw-heading2"><h2 id="Algorithmen_und_Formen">Algorithmen und Formen</h2></div>
<p><i>JSON-LD Processing Algorithms and API</i><sup id="cite_ref-json-ld-api_4-1" class="reference"><a href="#cite_note-json-ld-api-4"><span class="cite-bracket">[</span>4<span class="cite-bracket">]</span></a></sup> ist die andere der beiden Empfehlung des W3C, die für die erste Version von JSON-LD zusammen verabschiedet wurden. Sie behandelt nützliche Umformungen. Erst durch diesen Teil wird die Interpretation bzw. Bedeutung eines JSON-LD-Textes formal bzw. <a href="Algorithmisch" class="mw-redirect" title="Algorithmisch">durch Rechenvorschriften</a> erklärt, indem u. a. auch so der Bezug zur <a href="Abstrakte_Syntax" class="mw-redirect" title="Abstrakte Syntax">abstrakten Syntax</a> von <a href="Resource_Description_Framework" title="Resource Description Framework">RDF</a><sup id="cite_ref-rdf11-concepts_16-1" class="reference"><a href="#cite_note-rdf11-concepts-16"><span class="cite-bracket">[</span>16<span class="cite-bracket">]</span></a></sup> hergestellt wird.
</p><p>JSON-LD gestattet es, dieselben verlinkten Daten (RDF-Graph) in mehr als einer Form darzustellen. Die bevorzugte Form hängt dabei im Allgemeinen vom Anwendungsfall ab, wie Verarbeiter (Mensch oder Maschine), möglichst <a href="Redundanz_(Informationstheorie)" title="Redundanz (Informationstheorie)">redundanzarme</a> Übertragung bzw. Speicherung, möglichst einfache Verarbeitung, u. a.
</p><p>Zur Wandlung in besonders interessante Formen definiert diese Empfehlung <a href="Algorithmus" title="Algorithmus">Rechenverfahren</a>
</p>
<ul><li>zur Expansion (expansion), die zur expandierten (expanded) Form führt</li>
<li>zur Verdichtung (compaction), die zur kompakten oder verdichteten (compacted) Form führt</li>
<li>zum Verflachen (flattening), was zur flachen oder verflachten (flattened) Form führt</li></ul>
<p>Die wiederholte Anwendung einer Umformung (soweit möglich) verändert das Ergebnis nicht mehr nennenswert (<a href="Normalisierung_(Text)" title="Normalisierung (Text)">Vereinheitlichung</a>). <i>Diese Algorithmen sind zudem normativ!</i> Tatsächlich werden die Formen erst durch die Algorithmen vollständig definiert bzw. <a href="Normung" title="Normung">normiert</a>. Sonstige Aussagen über die Formen sind entweder nicht normativ, nicht vollständig oder aus den Algorithmen abgeleitet (bzw. abzuleiten). Des Weiteren ergibt sich daraus eine Einschränkung bezüglich gültiger Eingaben: Ein JSON-Text, der bei der Expansion ergebnislos bzw. als fehlerbehaftet abgewiesen werden würde, besitzt eigentlich keine maschinell verwertbare Interpretation als JSON-LD.
</p><p>Die <i>Expansion</i> ist die Transformation, an der die meisten Anwendungen interessiert sein werden, welche den Mehrwert von JSON-LD gegenüber JSON schöpfen wollen (und dazu nicht durchgängig eine expandierte Form verwenden, s. u.). Beachtenswert ist hierbei, dass alle Name/Wert-Paare, die keine Interpretation im Modell von JSON-LD finden,<sup id="cite_ref-28" class="reference"><a href="#cite_note-28"><span class="cite-bracket">[</span>28<span class="cite-bracket">]</span></a></sup> dabei entfernt werden. (Soweit es die API-Methoden betrifft (<a href="#API">s. u.</a>), ist die Expansion als interner Zwischenschritt außerdem unumgänglich.)
</p><p>Die <i>Verdichtung</i> findet zu einem gegebenen Kontext eine möglichst kompakte Form in diesem Kontext, welche (unter diesem) expandiert wiederum gleichbedeutend (aber nicht notwendig genau gleich) mit der Eingabe ist. Expansion und Verdichtung sind so bis zu einem gewissen Grade Umkehrungen zueinander:<sup id="cite_ref-3gen-web-apis_7-2" class="reference"><a href="#cite_note-3gen-web-apis-7"><span class="cite-bracket">[</span>7<span class="cite-bracket">]</span></a></sup> Die Expansion macht die Daten kontextunabhängig. Die Verdichtung kontextabhängig.
</p><p>Bei der Verdichtung kann optional die Umwandlung von einelementigen Arrays in ihr einziges Element unterdrückt werden (option compactArrays).
</p><p>Das <i>Verflachen</i> versieht (anonyme) Knoten-Objekte ohne „@id“ mit einer dokumentweit eindeutigen (blank node identifier), verschmilzt solche mit gleicher „@id“ und entfernt (tiefergehende) Schachtelungen. Es ergibt sich ein JSON-Array der RDF-Subjekte mit allen jeweils ausgehenden Prädikatskanten (mindestens eine, wobei eine @type-Kante mitzählt). Dort wo sie auch als RDF-Objekte auftreten, bleibt nur eine ansonsten eigenschaftslose Referenz mit der jeweiligen „@id“ zurück. Dies gilt auch für (untypisierte) Knotenobjekte, die nur in der Objekt-Rolle vorkommen.
</p><p>In dieser Form reichen drei bis vier<sup id="cite_ref-29" class="reference"><a href="#cite_note-29"><span class="cite-bracket">[</span>29<span class="cite-bracket">]</span></a></sup> ineinander geschachtelte <a href="Schleife_(Programmierung)" title="Schleife (Programmierung)">Schleifen</a> aus, um alle enthaltenen RDF-Tripel <a href="Iterator" title="Iterator">aufzuzählen</a>. (Siehe auch: Beispiel im <a href="#API">Abschnitt <i>API</i></a>) Das „flach“ bezieht sich daher offenkundig (nur) auf eine feste bzw. maximale <a href="Rekursionstiefe" class="mw-redirect" title="Rekursionstiefe">Rekursionstiefe</a>: Die Kombination einer festen Zahl von <a href="Iterative_Programmierung" title="Iterative Programmierung">iterativen</a> Schleifen ist hinreichend.
</p><p>Beim Verflachen kann durch Angabe eines (auch leeren) Kontextes optional eine leicht abgewandelte Verdichtung nachgeschaltet werden, die zu einer etwas bestimmteren Form führt.
</p><p>Anwendungen, welche durchgängig die flache Form verwendeten (siehe auch: <a href="#MIME-Typ-Parameter">Abschnitt <i>MIME-Typ-Parameter</i></a>), kämen auch ganz ohne die Algorithmen aus.
</p><p>Anwendungen wählen zur möglichst generischen Verarbeitung entweder die verflachte Form (ohne nachgeschaltete Verdichtung). Oder sie verdichten (zusätzlich) mit einem Kontext, der ihrem Zweck entgegenkommt. Letzteres hat den Vorteil, dass sich damit die Handhabung von absoluten IRIs weitgehend eliminieren lässt.
</p>
<div class="mw-heading mw-heading3"><h3 id="Beispiel_zur_Umformung">Beispiel zur Umformung</h3></div>
<p>Die folgenden drei JSON-LD-Texte stehen in folgender Beziehung: <i>links oben</i> ein Quelltext (handgeschrieben oder von einer Applikation stammend); <i>unten</i> die expandierte und verflachte Form davon (ohne nachgeschaltete Verdichtung), hierbei wurde ein anonymer Knoten benannt und durch eine Referenz ersetzt (sowie das Paar mit dem undefinierten Term „comment“ entfernt); <i>rechts oben</i> eine verdichtete Form wiederum davon in einem abgewandelten Kontext (u. a. ohne Typ-Definitionen, sowie mit zusätzlichen oder anders benannten IRI-Präfixen und deutschsprachigen Termen und Schlüsselwort-Aliassen).
</p>
<table class="centered toptextcells" style="font-size:80%;">
<tbody><tr>
<td>
<div class="mw-highlight mw-highlight-lang-javascript mw-content-ltr" dir="ltr"><pre><span></span><span class="p">{</span>
<span class="w"> </span><span class="s2">"@context"</span><span class="o">:</span><span class="w"> </span><span class="p">{</span>
<span class="w"> </span><span class="s2">"dbpedia"</span><span class="o">:</span><span class="w"> </span><span class="s2">"http://dbpedia.org/resource/"</span><span class="p">,</span>
<span class="w"> </span><span class="s2">"dbp-owl"</span><span class="o">:</span><span class="w"> </span><span class="s2">"http://dbpedia.org/ontology/"</span><span class="p">,</span>
<span class="w"> </span><span class="s2">"geo"</span><span class="o">:</span><span class="w"> </span><span class="s2">"http://www.w3.org/2003/01/geo/wgs84_pos#"</span><span class="p">,</span>
<span class="w"> </span><span class="s2">"bornOn"</span><span class="o">:</span><span class="w"> </span><span class="p">{</span>
<span class="w"> </span><span class="s2">"@id"</span><span class="o">:</span><span class="w"> </span><span class="s2">"dbp-owl:birthDate"</span><span class="p">,</span>
<span class="w"> </span><span class="s2">"@type"</span><span class="o">:</span><span class="w"> </span><span class="s2">"http://www.w3.org/2001/XMLSchema#date"</span>
<span class="w"> </span><span class="p">},</span>
<span class="w"> </span><span class="s2">"bornIn"</span><span class="o">:</span><span class="w"> </span><span class="s2">"dbp-owl:birthPlace"</span>
<span class="w"> </span><span class="p">},</span>
<span class="w"> </span><span class="s2">"@id"</span><span class="o">:</span><span class="w"> </span><span class="s2">"dbpedia:Albert_Einstein"</span><span class="p">,</span>
<span class="w"> </span><span class="s2">"bornOn"</span><span class="o">:</span><span class="w"> </span><span class="s2">"1879-03-14"</span><span class="p">,</span>
<span class="w"> </span><span class="s2">"bornIn"</span><span class="o">:</span><span class="w"> </span><span class="p">{</span>
<span class="w"> </span><span class="s2">"geo:alt"</span><span class="o">:</span><span class="w"> </span><span class="s2">"482"</span><span class="p">,</span>
<span class="w"> </span><span class="s2">"comment"</span><span class="o">:</span><span class="w"> </span><span class="s2">"drop me"</span>
<span class="w"> </span><span class="p">}</span>
<span class="p">}</span>
</pre></div>
</td>
<td>
<div class="mw-highlight mw-highlight-lang-javascript mw-content-ltr" dir="ltr"><pre><span></span><span class="p">{</span>
<span class="w"> </span><span class="s2">"@context"</span><span class="o">:</span><span class="w"> </span><span class="p">{</span>
<span class="w"> </span><span class="s2">"enti"</span><span class="o">:</span><span class="w"> </span><span class="s2">"http://dbpedia.org/resource/"</span><span class="p">,</span>
<span class="w"> </span><span class="s2">"onto"</span><span class="o">:</span><span class="w"> </span><span class="s2">"http://dbpedia.org/ontology/"</span><span class="p">,</span>
<span class="w"> </span><span class="s2">"Geburtsdatum"</span><span class="o">:</span><span class="w"> </span><span class="s2">"onto:birthDate"</span><span class="p">,</span>
<span class="w"> </span><span class="s2">"Geburtsort"</span><span class="o">:</span><span class="w"> </span><span class="s2">"onto:birthPlace"</span><span class="p">,</span>
<span class="w"> </span><span class="s2">"Ortshöhe"</span><span class="o">:</span><span class="w"> </span><span class="s2">"http://www.w3.org/2003/01/geo/wgs84_pos#alt"</span><span class="p">,</span>
<span class="w"> </span><span class="s2">"xsd"</span><span class="o">:</span><span class="w"> </span><span class="s2">"http://www.w3.org/2001/XMLSchema#"</span><span class="p">,</span>
<span class="w"> </span><span class="s2">"JJJJ-MM-TT"</span><span class="o">:</span><span class="w"> </span><span class="s2">"xsd:date"</span><span class="p">,</span>
<span class="w"> </span><span class="s2">"Typ"</span><span class="o">:</span><span class="w"> </span><span class="s2">"@type"</span>
<span class="w"> </span><span class="p">},</span>
<span class="w"> </span><span class="s2">"@graph"</span><span class="o">:</span><span class="w"> </span><span class="p">[</span>
<span class="w"> </span><span class="p">{</span>
<span class="w"> </span><span class="s2">"@id"</span><span class="o">:</span><span class="w"> </span><span class="s2">"_:b0"</span><span class="p">,</span>
<span class="w"> </span><span class="s2">"Ortshöhe"</span><span class="o">:</span><span class="w"> </span><span class="s2">"482"</span>
<span class="w"> </span><span class="p">},</span>
<span class="w"> </span><span class="p">{</span>
<span class="w"> </span><span class="s2">"@id"</span><span class="o">:</span><span class="w"> </span><span class="s2">"enti:Albert_Einstein"</span><span class="p">,</span>
<span class="w"> </span><span class="s2">"Geburtsdatum"</span><span class="o">:</span><span class="w"> </span><span class="p">{</span>
<span class="w"> </span><span class="s2">"Typ"</span><span class="o">:</span><span class="w"> </span><span class="s2">"JJJJ-MM-TT"</span><span class="p">,</span>
<span class="w"> </span><span class="s2">"@value"</span><span class="o">:</span><span class="w"> </span><span class="s2">"1879-03-14"</span>
<span class="w"> </span><span class="p">},</span>
<span class="w"> </span><span class="s2">"Geburtsort"</span><span class="o">:</span><span class="w"> </span><span class="p">{</span>
<span class="w"> </span><span class="s2">"@id"</span><span class="o">:</span><span class="w"> </span><span class="s2">"_:b0"</span>
<span class="w"> </span><span class="p">}</span>
<span class="w"> </span><span class="p">}</span>
<span class="w"> </span><span class="p">]</span>
<span class="p">}</span>
</pre></div>
</td></tr>
<tr>
<td colspan="2"><div style="display:table;" class="centered">
<div class="mw-highlight mw-highlight-lang-javascript mw-content-ltr" dir="ltr"><pre><span></span><span class="p">[</span>
<span class="w"> </span><span class="p">{</span>
<span class="w"> </span><span class="s2">"@id"</span><span class="o">:</span><span class="w"> </span><span class="s2">"_:b0"</span><span class="p">,</span>
<span class="w"> </span><span class="s2">"http://www.w3.org/2003/01/geo/wgs84_pos#alt"</span><span class="o">:</span><span class="w"> </span><span class="p">[</span>
<span class="w"> </span><span class="p">{</span>
<span class="w"> </span><span class="s2">"@value"</span><span class="o">:</span><span class="w"> </span><span class="s2">"482"</span>
<span class="w"> </span><span class="p">}</span>
<span class="w"> </span><span class="p">]</span>
<span class="w"> </span><span class="p">},</span>
<span class="w"> </span><span class="p">{</span>
<span class="w"> </span><span class="s2">"@id"</span><span class="o">:</span><span class="w"> </span><span class="s2">"http://dbpedia.org/resource/Albert_Einstein"</span><span class="p">,</span>
<span class="w"> </span><span class="s2">"http://dbpedia.org/ontology/birthDate"</span><span class="o">:</span><span class="w"> </span><span class="p">[</span>
<span class="w"> </span><span class="p">{</span>
<span class="w"> </span><span class="s2">"@type"</span><span class="o">:</span><span class="w"> </span><span class="s2">"http://www.w3.org/2001/XMLSchema#date"</span><span class="p">,</span>
<span class="w"> </span><span class="s2">"@value"</span><span class="o">:</span><span class="w"> </span><span class="s2">"1879-03-14"</span>
<span class="w"> </span><span class="p">}</span>
<span class="w"> </span><span class="p">],</span>
<span class="w"> </span><span class="s2">"http://dbpedia.org/ontology/birthPlace"</span><span class="o">:</span><span class="w"> </span><span class="p">[</span>
<span class="w"> </span><span class="p">{</span>
<span class="w"> </span><span class="s2">"@id"</span><span class="o">:</span><span class="w"> </span><span class="s2">"_:b0"</span>
<span class="w"> </span><span class="p">}</span>
<span class="w"> </span><span class="p">]</span>
<span class="w"> </span><span class="p">}</span>
<span class="p">]</span>
</pre></div>
</div>
</td></tr></tbody></table>
<p>Durch das @graph-Element können sich hier mehrere Knoten-Objekte denselben Kontext teilen.
</p><p>Unabhängig von der Form besagt der darin enthaltene Graph, wann Albert Einstein geboren wäre und auf welchem Höhenmeter (<a href="World_Geodetic_System_1984" title="World Geodetic System 1984">WGS84</a>) sein Geburtsort läge. Oder in Tripel-Notation (N-Triples, siehe auch: <a href="Turtle_(Syntax)" title="Turtle (Syntax)">Turtle</a>):
</p>
<pre style="font-size:80%;"><http://dbpedia.org/resource/Albert_Einstein> <http://dbpedia.org/ontology/birthDate> "1879-03-14"^^<http://www.w3.org/2001/XMLSchema#date> .
<http://dbpedia.org/resource/Albert_Einstein> <http://dbpedia.org/ontology/birthPlace> _:b0 .
_:b0 <http://www.w3.org/2003/01/geo/wgs84_pos#alt> "482" .
</pre>
<div class="mw-heading mw-heading3"><h3 id="Hilfsverfahren">Hilfsverfahren</h3></div>
<p>Als <b>interne Hilfsverfahren</b> treten u. a. auf
</p>
<ul><li>Kontextverarbeitung (<b>Context Processing Algorithm</b>): Kontexte können kombiniert und per IRI referenziert werden. Ergebnis dieser Operationen ist jeweils wieder ein Kontext (Akkumulation). Dabei müssen u. U. zyklische Bezüge abgewiesen werden.</li></ul>
<dl><dd><ul><li>Erzeugung einer Term-Definition (<b>Create Term Definition</b>): Diese tritt immer auf, wenn eine Definition aus einem Kontext in den (aktiven) Ergebniskontext einfließt. Auch hierbei werden <a href="Zirkelbezug" title="Zirkelbezug">zirkelhafte Bezüge</a> aufgedeckt und zurückgewiesen.</li></ul></dd></dl>
<ul><li>Erzeugung einer <a href="Indexstruktur" title="Indexstruktur">Zugriffsstruktur</a> <i>(Node Map Generation)</i>, welche nach den Subjekten gruppiert und Knoten-Objekte mit gleicher @id verschmilzt (siehe Verflachen).</li></ul>
<p>Bisher u. a. nicht erwähnt: <i>IRI Expansion</i>, <i>Value Expansion</i>, <i>Inverse Context Creation</i>, <i>IRI Compaction</i>, <i>Term Selection</i>, <i>Value Compaction</i>, <i>Generate Blank Node Identifier</i>.
</p><p>Diese Verfahren sind jedoch nicht für das API (s. u.) empfohlen, wenngleich sie (in äquivalenter Form) kaum verzichtbarer Bestandteil einer <a href="Implementierung" title="Implementierung">Implementierung</a> desselben sind.<sup id="cite_ref-30" class="reference"><a href="#cite_note-30"><span class="cite-bracket">[</span>30<span class="cite-bracket">]</span></a></sup>
</p>
<div class="mw-heading mw-heading3"><h3 id="Bezug_zu_RDF">Bezug zu RDF</h3></div>
<p>Daneben ist die <a href="Serialisierung" title="Serialisierung">Serialisierung</a> <i>vom</i>, sowie die Deserialisierung <i>zum</i> <b>abstrakten RDF-Modell</b> (benannte Mengen von Tripeln bzw. Graph-Mengen) definiert und damit indirekt die Wandlung zu bzw. von jeder (anderen) konkreten RDF-Syntax. Des Weiteren wird darüber die Verbindung zur <a href="Semantik" title="Semantik">Semantik</a> von RDF<sup id="cite_ref-rdf11-mt_31-0" class="reference"><a href="#cite_note-rdf11-mt-31"><span class="cite-bracket">[</span>31<span class="cite-bracket">]</span></a></sup> hergestellt. Dies beinhaltet u. a. die Korrespondenz der primitiven JSON-Typen und -Literale mit denjenigen von <a href="XML_Schema" title="XML Schema">XML Schema</a> und diejenige der JSON-LD-Listen mit denen von <a href="RDF-Schema" title="RDF-Schema">RDF-Schema</a>. (Nicht erwähnt hierbei u. a.: Sprachkennzeichnung von Strings).
</p>
<div class="mw-heading mw-heading3"><h3 id="MIME-Typ-Parameter">MIME-Typ-Parameter</h3></div>
<p>Der <a href="Multipurpose_Internet_Mail_Extensions" title="Multipurpose Internet Mail Extensions">MIME</a>-Typ von JSON-LD sieht einen optionalen Parameter „profile“ vor. Sein Wert (ein IRI aus dem JSON-LD-Namensraum<sup id="cite_ref-32" class="reference"><a href="#cite_note-32"><span class="cite-bracket">[</span>32<span class="cite-bracket">]</span></a></sup>) korrespondiert mit den drei genannten Formen.
</p><p>Beispiel eines MIME Types im HTTP-Accept-Header:
</p><p>Accept: application/ld+json#compacted
</p><p>Damit kann ggf. verhindert werden, dass Transformationen unnötig mehrfach ausgeführt werden bzw. in falscher Erwartung unterbleiben. Außerdem kann darüber der Ort der Verarbeitung ausgehandelt werden (beim Sender bzw. Empfänger).
</p>
<div class="mw-heading mw-heading3"><h3 id="API">API</h3></div>
<p>Schließlich wird die <a href="Programmierschnittstelle" title="Programmierschnittstelle">Programmierschnittstelle</a> eines <i>JSON-LD-Prozessors</i> spezifiziert (JsonLdProcessor), jedoch nur nicht-normativ. Damit stünde ein einheitlicher Zugang zu den drei Transformations-Verfahren (<a href="Methode_(Programmierung)" title="Methode (Programmierung)">Methoden</a>: compact, expand, flatten) in Programmierumgebungen bereit, vorwiegend auch für das im Web-Umfeld verbreitete <a href="ECMAScript" class="mw-redirect" title="ECMAScript">ECMAScript</a>. Die Schnittstelle setzt auf der <a href="Future_(Programmierung)" title="Future (Programmierung)">Promise</a>-Abstraktion zur asynchronen Programmierung auf. Die Flatten- und Compact-Methoden aus dem API beinhalten Expansion (und IRI-Dereferenzierung).
</p><p>Um seine Aufgabe zu erledigen, muss der Prozessor ggf. (<a href="Rekursiv" class="mw-redirect" title="Rekursiv">rekursiv</a>) externe Kontexte, die per <a href="Internationalized_Resource_Identifier" title="Internationalized Resource Identifier">IRI</a> bzw. <a href="Uniform_Resource_Locator" title="Uniform Resource Locator">URL</a> referenziert wurden, (von entfernter Seite, remote) aus dem Internet oder lokal aus einem <a href="Cache" title="Cache">Cache</a> laden. Außerdem sollen meist die JSON-LD-Daten hinter IRIs geladen werden (Dereferenzierung). In diese <i>Ladeprozedur</i> kann über die definierte Schnittstelle eingegriffen werden (JsonLdOptions documentLoader).
</p><p>In einer Umgebung, in der dieses API verfügbar ist (und anderes), würde das folgende <a href="CoffeeScript" title="CoffeeScript">CoffeeScript</a> das Geburtsdatum von <a href="Albert_Einstein" title="Albert Einstein">Albert Einstein</a> laut <a href="DBpedia" title="DBpedia">DBpedia</a> ausgeben (genauer: alle solchen verfügbaren, soweit kein Fehler auftritt).<sup id="cite_ref-iri-deref_33-0" class="reference"><a href="#cite_note-iri-deref-33"><span class="cite-bracket">[</span>33<span class="cite-bracket">]</span></a></sup>
</p><p><span id="API-Beispiel"></span>
</p>
<div class="mw-highlight mw-highlight-lang-coffeescript mw-content-ltr" dir="ltr"><pre><span></span><span class="nv">AlbertsIRI</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="s">"http://dbpedia.org/data/Albert_Einstein.jsonld"</span>
<span class="c1"># bzw. "http://dbpedia.org/resource/Albert_Einstein", siehe Anmerkung</span>
<span class="nv">dbpprop</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="s">"http://dbpedia.org/property/"</span>
<span class="nv">dbpprop$birthDate</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="nx">dbpprop</span><span class="w"> </span><span class="o">+</span><span class="w"> </span><span class="s">"birthDate"</span>
<span class="hll"><span class="nv">expanded</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="p">(</span><span class="k">new</span><span class="w"> </span><span class="nx">JsonLdProcessor</span><span class="p">).</span><span class="nx">expand</span><span class="w"> </span><span class="nx">AlbertsIRI</span>
</span><span class="nx">expanded</span><span class="p">.</span><span class="nx">then</span><span class="w"> </span><span class="nf">(subjects) -></span>
<span class="w"> </span><span class="k">for</span><span class="w"> </span><span class="nx">subject</span><span class="w"> </span><span class="k">in</span><span class="w"> </span><span class="nx">subjects</span>
<span class="w"> </span><span class="k">for</span><span class="w"> </span><span class="nx">object</span><span class="w"> </span><span class="k">in</span><span class="w"> </span><span class="nx">subject</span><span class="p">[</span><span class="nx">dbpprop$birthDate</span><span class="p">]</span><span class="w"> </span><span class="o">?</span><span class="w"> </span><span class="p">[]</span>
<span class="w"> </span><span class="nx">console</span><span class="p">.</span><span class="nx">log</span><span class="w"> </span><span class="nx">object</span><span class="p">[</span><span class="s">'@value'</span><span class="p">]</span>
<span class="c1"># Fehlerbehandlung weggelassen</span>
</pre></div>
<p>Programmier-Schnittstellen zur <i>Konvertierung zwischen JSON-LD und dem RDF-Modell</i> sind zwar nicht Bestandteil des empfohlenen APIs. Der Entwicklungsprozess beim W3C hat aber auch dafür Beispiel-Implementierungen hervorgebracht (toRDF, fromRDF). Außerdem wandeln RDF-<a href="Framework" title="Framework">Frameworks</a> bzw. -<a href="Programmbibliothek" title="Programmbibliothek">Programmbibliotheken</a> auf dieser Grundlage zwischen ihrer jeweiligen RDF-Abstraktion und einer JSON-LD-Form. Siehe auch <a href="#Programmbibliotheken_und_Werkzeuge">Abschnitt <i>Programmbibliotheken und Werkzeuge</i></a>.
</p>
<div class="mw-heading mw-heading2"><h2 id="Verarbeitung_von_JSON-LD">Verarbeitung von JSON-LD</h2></div>
<p>Unabhängig von der Quelle eines JSON-LD-Textes: Dieselben Daten können als JSON-LD (in kompakter Form) interpretiert und vor der Verarbeitung expandiert oder nur als einfaches JSON geparst werden (wie vor einer Migration von JSON nach JSON-LD). Verschiedene <a href="Modul_(Software)" title="Modul (Software)">Module</a> können dies auch unterschiedlich handhaben.
</p><p>Beispiel aus einer <a href="JavaScript" title="JavaScript">JavaScript</a>-Umgebung (z. B. <a href="Webbrowser" title="Webbrowser">Webbrowser</a>):
</p>
<div class="mw-highlight mw-highlight-lang-javascript mw-content-ltr" dir="ltr"><pre><span></span><span class="c1">// JSON-Text in der Variablen data</span>
<span class="c1">// Modul A (ursprüngliche App ohne Bewusstsein für Linked Data)</span>
<span class="kd">var</span><span class="w"> </span><span class="nx">legacy</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="nb">JSON</span><span class="p">.</span><span class="nx">parse</span><span class="p">(</span><span class="w"> </span><span class="nx">data</span><span class="w"> </span><span class="p">)</span>
<span class="c1">// Modul B (spätere Erweiterung fürs Semantische Web)</span>
<span class="kd">var</span><span class="w"> </span><span class="nx">advanced</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="p">(</span><span class="ow">new</span><span class="w"> </span><span class="nx">JsonLdProcessor</span><span class="p">).</span><span class="nx">expand</span><span class="p">(</span><span class="w"> </span><span class="nb">JSON</span><span class="p">.</span><span class="nx">parse</span><span class="p">(</span><span class="w"> </span><span class="nx">data</span><span class="w"> </span><span class="p">)</span><span class="w"> </span><span class="p">)</span>
</pre></div>
<div class="mw-heading mw-heading3"><h3 id="Einbettung_in_HTML">Einbettung in HTML</h3></div>
<p>Zur Einbettung von JSON-LD in HTML wird das Script-Element empfohlen:<sup id="cite_ref-json-ld_3-3" class="reference"><a href="#cite_note-json-ld-3"><span class="cite-bracket">[</span>3<span class="cite-bracket">]</span></a></sup>
</p>
<div class="mw-highlight mw-highlight-lang-html mw-content-ltr" dir="ltr"><pre><span></span><span class="p"><</span><span class="nt">script</span> <span class="na">type</span><span class="o">=</span><span class="s">"application/ld+json"</span> <span class="na">id</span><span class="o">=</span><span class="s">"json-ld-data"</span><span class="p">></span>
<span class="w"> </span><span class="p">{</span>
<span class="w"> </span><span class="s2">"@context"</span><span class="o">:</span><span class="w"> </span><span class="p">...</span>
<span class="w"> </span><span class="s2">"@id"</span><span class="o">:</span><span class="w"> </span><span class="p">...</span>
<span class="w"> </span><span class="s2">"createdAt"</span><span class="o">:</span><span class="w"> </span><span class="p">...</span>
<span class="w"> </span><span class="s2">"author"</span><span class="o">:</span><span class="w"> </span><span class="p">...</span>
<span class="w"> </span><span class="p">}</span>
<span class="p"></</span><span class="nt">script</span><span class="p">></span>
</pre></div>
<p>Dadurch kann eine Anwendung über das <a href="Document_Object_Model" title="Document Object Model">DOM</a> darauf zugreifen, u. a. also auch ein <a href="JavaScript" title="JavaScript">JavaScript</a> im <a href="Webbrowser" title="Webbrowser">Webbrowser</a>:
</p>
<div class="mw-highlight mw-highlight-lang-javascript mw-content-ltr" dir="ltr"><pre><span></span><span class="c1">// DOM</span>
<span class="kd">var</span><span class="w"> </span><span class="nx">data</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="nb">document</span><span class="p">.</span><span class="nx">getElementById</span><span class="p">(</span><span class="w"> </span><span class="s1">'json-ld-data'</span><span class="w"> </span><span class="p">).</span><span class="nx">textContent</span>
<span class="c1">// jQuery</span>
<span class="kd">var</span><span class="w"> </span><span class="nx">data</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="nx">$</span><span class="p">(</span><span class="w"> </span><span class="s1">'#json-ld-data'</span><span class="w"> </span><span class="p">).</span><span class="nx">text</span><span class="p">()</span>
</pre></div>
<p>Mögliche Anwendungen dafür sind zunächst dieselben wie auch für <a href="RDFa" title="RDFa">RDFa</a>, <a href="HTML_Microdata" class="mw-redirect" title="HTML Microdata">HTML Microdata</a> u. a. Der Unterschied besteht hauptsächlich darin, wie die semantischen Daten technisch extrahiert werden. Die Bindung an HTML-Attribute und die Verzahnung mit dessen Elementstruktur entfällt hierbei. Nachteilig ist das hingegen in Umgebungen, die bisher allein mit (X)HTML-Werkzeugen auskamen (da sie nun auch JSON verarbeiten müssten).
</p><p>Anwendungsbeispiele sind klassische <a href="Metadaten" title="Metadaten">Metadaten</a> über das Dokument bis zu einer maschinenlesbaren Repräsentation des vollständigen Textinhalts (der parallel <a href="Nat%C3%BCrliche_Sprache" title="Natürliche Sprache">natürlichsprachlich</a> formuliert für die Rezeption durch Menschen bestimmt ist). Dies könnte eine automatisch erstellte <a href="Auftragsbest%C3%A4tigung" title="Auftragsbestätigung">Auftragsbestätigung</a> sein. Auch die nachträgliche Generierung oder Anreicherung eines solchen Inhalts abhängig von Vorgaben des <a href="Rezipient" title="Rezipient">Rezipienten</a> wäre so noch möglich. Ebenso könnte ein persönlicher Assistent bzw. <a href="Software-Agent" title="Software-Agent">Software-Agent</a> autonom darauf reagieren oder Aktionen anbieten. (Siehe auch: <a href="#Anwendungen_und_Anwender">Abschnitt <i>Anwendungen und Anwender</i></a>)
</p>
<div class="mw-heading mw-heading3"><h3 id="Anforderung_von_JSON-LD">Anforderung von JSON-LD</h3></div>
<p>Ein JSON-LD-Kontext oder Daten in diesem Format werden über <a href="Hypertext_Transfer_Protocol" title="Hypertext Transfer Protocol">HTTP</a> vorzugsweise mit dem zugehörigen <a href="Multipurpose_Internet_Mail_Extensions" title="Multipurpose Internet Mail Extensions">MIME</a>-Typ angefordert. (Dabei kann es zu <a href="Content_Negotiation" title="Content Negotiation">Verhandlungen über den Inhaltstyp</a> und <a href="Weiterleitung" title="Weiterleitung">Weiterleitungen</a> kommen (<a href="HTTP-Statuscode#g3xx" title="HTTP-Statuscode">Statuscode 3xx</a>, <a href="Liste_der_HTTP-Headerfelder#Location" title="Liste der HTTP-Headerfelder">Location-Header</a>).)
</p><p>Probeweise Anforderung zum Beispiel mit <a href="CURL" title="CURL">cURL</a> (in der <a href="Bash_(Shell)" title="Bash (Shell)">Bash</a> mit einer URL in der Variablen <code>$URL</code>):
</p>
<div class="mw-highlight mw-highlight-lang-bash mw-content-ltr" dir="ltr"><pre><span></span>curl<span class="w"> </span>-i<span class="w"> </span>-L<span class="w"> </span>-H<span class="w"> </span><span class="s2">"Accept: application/ld+json"</span><span class="w"> </span><span class="s2">"</span><span class="nv">$URL</span><span class="s2">"</span>
</pre></div>
<p>Im positiven Fall ist die (letzte) Antwort vom entsprechenden <a href="Liste_der_HTTP-Headerfelder#Content-Type" title="Liste der HTTP-Headerfelder">Inhaltstyp</a> und enthält verwertbares JSON-LD.
</p><p>(Anmerkung zum MIME-Typ selbst: application/ld+json basiert (im Sinne von RFC 6838<sup id="cite_ref-34" class="reference"><a href="#cite_note-34"><span class="cite-bracket">[</span>34<span class="cite-bracket">]</span></a></sup>) auf einem <i>Structured Syntax (Name) Suffix</i> „+json“, das in RFC 6839<sup id="cite_ref-35" class="reference"><a href="#cite_note-35"><span class="cite-bracket">[</span>35<span class="cite-bracket">]</span></a></sup> registriert ist.)
</p><p>Besonders im Umfeld von <a href="Linked_Data" class="mw-redirect" title="Linked Data">Linked Data</a> ist bei Inhalt vom Typ application/json Vorsicht geboten, weil dieser in Wirklichkeit u. a. auch vom <a href="Kompatibilit%C3%A4t_(Technik)" title="Kompatibilität (Technik)">inkompatiblen</a> Format RDF/JSON sein kann, siehe auch <a href="#Vorgänger_und_Alternativen">Abschnitt <i>Vorgänger und Alternativen</i></a>.
</p><p><a href="Client" title="Client">Dienstnehmer</a> sollten gegenüber dem <a href="Server" title="Server">Erbringer des Dienstes</a> (1) möglichst eine <b>klare Präferenz</b> für „ld+json“ zum Ausdruck bringen (ggf. per q-Parameter im <a href="Liste_der_HTTP-Headerfelder#Accept" title="Liste der HTTP-Headerfelder">Accept-Header</a>) und (2) bei allen anderen „json“-Typen auf eine <i>contextURL im Link-Header</i> achten (siehe auch: <a href="#Alternative_Kontextualisierung">Abschnitt <i>Alternative Kontextualisierung</i></a>). Ansonsten riskieren sie, sonstige JSON-Daten zu erhalten (die in der JSON-LD-Sicht zu einer leeren oder andersartig unerwarteten Tripelmenge expandieren), ohne dass dies (vom Standard-API) als Fehler signalisiert werden würde.
</p><p>Für die reibungslose Kommunikation mit möglichst vielen Datenquellen kann daher eine benutzerdefinierte Ladeprozedur (custom document loader) erforderlich sein, siehe <a href="#API">Abschnitt <i>API</i></a>.
</p><p>Generell unproblematisch(er) sind URLs, welche einen eindeutigen Hinweis auf das gewünschte Format bereits enthalten (etwa durch die Endung „.jsonld“ oder durch einen entsprechenden Datentyp- bzw. Format-<a href="Query-String" title="Query-String">Parameter</a>). Dieses Verfahren ist zum Bezug eines JSON-LD-Kontextes meist ausreichend. (Bei der Anforderung von <a href="Linked_Data" class="mw-redirect" title="Linked Data">Linked Data</a> zu einer (per URL referenzierten) Entität widerspräche es jedoch Grundsätzen aus diesem Umfeld.<sup id="cite_ref-iri-deref_33-1" class="reference"><a href="#cite_note-iri-deref-33"><span class="cite-bracket">[</span>33<span class="cite-bracket">]</span></a></sup> Beispielsweise müsste einer Dienstbeschreibung zur jeweiligen Quelle erst entnommen werden, wie diese URL zu bilden wäre. Generische bzw. anpassungsfähige Verfahren werden daher bevorzugt.)
</p>
<div class="mw-heading mw-heading3"><h3 id="Programmbibliotheken_und_Werkzeuge">Programmbibliotheken und Werkzeuge</h3></div>
<p><a href="Implementierung" title="Implementierung">Implementierungen</a> des empfohlenen APIs sowie zusätzlicher Funktionen zur Verarbeitung von JSON-LD gibt es bereits für mehrere Programmiersprachen (Stand Juni 2014).
</p><p>Die folgenden gelten als <a href="Konform" class="mw-redirect" title="Konform">konform</a> zur Spezifikation, basierend auf den <a rel="nofollow" class="external text" href="https://json-ld.org/test-suite/reports/">Test-Reports</a> zur zugehörigen <a href="Softwaretest" title="Softwaretest">Testsammlung</a>:<sup id="cite_ref-36" class="reference"><a href="#cite_note-36"><span class="cite-bracket">[</span>36<span class="cite-bracket">]</span></a></sup><sup id="cite_ref-37" class="reference"><a href="#cite_note-37"><span class="cite-bracket">[</span>37<span class="cite-bracket">]</span></a></sup>
</p>
<ul><li>für <a href="JavaScript" title="JavaScript">JavaScript</a> <a rel="nofollow" class="external text" href="https://github.com/digitalbazaar/jsonld.js">von Digital Bazaar, Inc.</a> (Browser, <a href="Node.js" title="Node.js">Node.js</a>, <a href="Kommandozeile" title="Kommandozeile">Kommandozeile</a>, Web-App)</li>
<li>für <a href="Python_(Programmiersprache)" title="Python (Programmiersprache)">Python</a> <a rel="nofollow" class="external text" href="https://github.com/digitalbazaar/pyld">PyLD von Digital Bazaar, Inc.</a></li>
<li>für <a href="PHP" title="PHP">PHP</a> <a rel="nofollow" class="external text" href="https://github.com/digitalbazaar/php-json-ld">von Digital Bazaar, Inc.</a>, <a rel="nofollow" class="external text" href="https://github.com/lanthaler/JsonLD">von Markus Lanthaler</a></li>
<li>für <a href="Ruby_(Programmiersprache)" title="Ruby (Programmiersprache)">Ruby</a> <a rel="nofollow" class="external text" href="https://github.com/ruby-rdf/json-ld/">innerhalb von Ruby RDF</a></li>
<li>für <a href="Java_(Programmiersprache)" title="Java (Programmiersprache)">Java</a> <a rel="nofollow" class="external text" href="https://github.com/jsonld-java/jsonld-java">von jsonld-java auf Github</a></li>
<li>für <a href="C-Sharp" title="C-Sharp">C#</a> <a rel="nofollow" class="external text" href="https://github.com/NuGet/json-ld.net">innerhalb von NuGet</a></li></ul>
<p>Wandlung zwischen JSON-LD und anderen Formaten:
</p>
<ul><li>von RDFa: (u. a. auch nach JSON-LD) mittels <a rel="nofollow" class="external text" href="https://www.w3.org/2012/pyRdfa/">RDFa 1.1 Distiller and Parser von Ivan Herman</a> (<a rel="nofollow" class="external text" href="http://semanticweb.com/rdfa-1-1-distiller-json-ld_b24954">seit November 2011</a>)</li>
<li><a rel="nofollow" class="external text" href="https://rdf-translator.appspot.com/">RDF Translator</a><sup id="cite_ref-38" class="reference"><a href="#cite_note-38"><span class="cite-bracket">[</span>38<span class="cite-bracket">]</span></a></sup> (RDFLib-basiert)</li>
<li>über <a rel="nofollow" class="external text" href="https://github.com/RDFLib/rdflib-jsonld">ein Plugin</a> innerhalb von RDFLib <a rel="nofollow" class="external text" href="https://github.com/RDFLib/rdflib">bei Github</a></li>
<li>in <a href="Ruby_(Programmiersprache)" title="Ruby (Programmiersprache)">Ruby</a> <a rel="nofollow" class="external text" href="http://gkellogg.github.io/json-ld/">als Erweiterung</a> zu <a rel="nofollow" class="external text" href="https://ruby-rdf.github.io/rdf/">RDF.rb</a> <a rel="nofollow" class="external text" href="http://ruby-rdf.github.io/">im Ruby RDF Project</a></li></ul>
<div class="mw-heading mw-heading2"><h2 id="Vorgänger_und_Alternativen"><span id="Vorg.C3.A4nger_und_Alternativen"></span>Vorgänger und Alternativen</h2></div>
<p>Weder ist JSON-LD aus dem Nichts entstanden, noch ist die gewählte Struktur zur Repräsentation von Linked Data im Allgemeinen und der Serialisierung von RDF im Besonderen die einzig mögliche.
</p><p>Veranschaulicht man die Serialisierungs-Struktur von JSON-LD bezüglich RDF-Tripeln S(ubjekt), P(rädikat), O(bjekt) folgendermaßen (flache Form)
</p>
<pre> [ { "@id": "S", "P": [ O ] } ]
</pre>
<p>dann stellt sich die von <b>RDF/JSON</b> so dar:<sup id="cite_ref-rdf-in-json_9-1" class="reference"><a href="#cite_note-rdf-in-json-9"><span class="cite-bracket">[</span>9<span class="cite-bracket">]</span></a></sup><sup id="cite_ref-rdf-json_39-0" class="reference"><a href="#cite_note-rdf-json-39"><span class="cite-bracket">[</span>39<span class="cite-bracket">]</span></a></sup>
</p>
<pre> { "S": { "P": [ O ] } }
</pre>
<p>wobei für Objekte O per „type“ zwischen Literalen und Ressourcen unterschieden wird:
</p>
<pre> { "type": "literal", "value": ..., "datatype": … }
{ "type": "uri", "value": … }
</pre>
<p>(„[ O ]“ symbolisiert hierbei die Gruppierung von Objekten mit gleichem Subjekt und Prädikat in einem JSON-Array.)
</p><p>RDF/JSON (vereinzelt auch: <i>Talis RDF/JSON</i>) wurde vom W3C zugunsten von JSON-LD nicht weiter verfolgt.<sup id="cite_ref-the-state-of-rdf-and-json_40-0" class="reference"><a href="#cite_note-the-state-of-rdf-and-json-40"><span class="cite-bracket">[</span>40<span class="cite-bracket">]</span></a></sup>
</p><p>Auch anzutreffen ist das flache Tripel-Schema<sup id="cite_ref-rdf-in-json_9-2" class="reference"><a href="#cite_note-rdf-in-json-9"><span class="cite-bracket">[</span>9<span class="cite-bracket">]</span></a></sup>
</p>
<pre> [ { "s": {"uri": S}, "p": "P", "o": O } ]
</pre>
<p>Fundamentale Konzepte sind über die Arbeit an <b>RDFj</b><sup id="cite_ref-rdfj_41-0" class="reference"><a href="#cite_note-rdfj-41"><span class="cite-bracket">[</span>41<span class="cite-bracket">]</span></a></sup> in LD-JSON eingeflossen, die teilweise aus dem Jahr 2004 stammt.<sup id="cite_ref-json-ld_3-4" class="reference"><a href="#cite_note-json-ld-3"><span class="cite-bracket">[</span>3<span class="cite-bracket">]</span></a></sup>
</p><p>Über ein Dutzend weitere Ansätze, RDF-Tripel in JSON abzubilden, listet allein das W3C schon 2011 in seinem Wiki auf.<sup id="cite_ref-JSON+RDF_42-0" class="reference"><a href="#cite_note-JSON+RDF-42"><span class="cite-bracket">[</span>42<span class="cite-bracket">]</span></a></sup>
</p><p>Alternativen im engeren Sinne wären (1) gültiges JSON und hätten (2) einen Bezug zu RDF. Serialisierungsformen von RDF bzw. Transportformen für Linked Data, die nicht nach JSON führen, werden hier nicht als Alternativen im engeren Sinne behandelt. (Siehe ggf. bei <a href="Linked_Data" class="mw-redirect" title="Linked Data">Linked Data</a>, <a href="Resource_Description_Framework" title="Resource Description Framework">RDF</a>.)
</p><p>Zu den folgenden Formaten demonstriert die Empfehlung<sup id="cite_ref-json-ld_3-5" class="reference"><a href="#cite_note-json-ld-3"><span class="cite-bracket">[</span>3<span class="cite-bracket">]</span></a></sup> anhand von Beispielen, dass JSON-LD die darin enthaltenen semantischen Daten ausdrücken könne:
</p>
<ul><li><a href="Turtle_(Syntax)" title="Turtle (Syntax)">Turtle</a></li>
<li><a href="RDFa" title="RDFa">RDFa</a></li>
<li><a href="HTML_Microdata" class="mw-redirect" title="HTML Microdata">HTML Microdata</a></li>
<li><a href="Mikroformat" title="Mikroformat">Mikroformate</a></li></ul>
<p>Zu einigen davon gibt es zwar gesonderte JSON-Formen (die Überbleibsel des Quellformats enthalten). Als langfristige Alternative erscheinen sie so nur noch unter dem Aspekt der <a href="Kompatibilit%C3%A4t_(Technik)" title="Kompatibilität (Technik)">Kompatibilität</a>.
</p>
<div class="mw-heading mw-heading3"><h3 id="Alternative:_Microdata+JSON"><span id="Alternative:_Microdata.2BJSON"></span>Alternative: Microdata+JSON</h3></div>
<p>HTML Microdata vom W3C ist erklärtermaßen mit RDF kompatibel<sup id="cite_ref-43" class="reference"><a href="#cite_note-43"><span class="cite-bracket">[</span>43<span class="cite-bracket">]</span></a></sup> und beinhaltet eine gesonderte Konvertierung nach JSON. Indirekt kann es daher als Alternative zu JSON-LD betrachtet werden. Die Verbindung mit einer Markup-Sprache ist jedoch gerade das, wovon JSON-LD vollkommen frei ist.
</p><p>Schema:
</p>
<pre> {"items": [
{ "id": "S", "properties": { "P": [ O ] } }
] }
</pre>
<div class="mw-heading mw-heading3"><h3 id="Alternative:_SPARQL-Anfrage-Ergebnis">Alternative: SPARQL-Anfrage-Ergebnis</h3></div>
<p>Für das Ergebnis von <a href="SPARQL" title="SPARQL">SPARQL</a>-Anfragen wurde eine JSON-Form normiert.<sup id="cite_ref-sparql11-results-json_44-0" class="reference"><a href="#cite_note-sparql11-results-json-44"><span class="cite-bracket">[</span>44<span class="cite-bracket">]</span></a></sup> Geht es nur um die Verarbeitung solcher Ergebnisse, stellt dies eine (beschränkte) Alternative dar.
</p><p>Das Ergebnis von SELECT-Anfragen sind Variablen-Bindungen, keine gewöhnlichen Tripelmengen. CONSTRUCT-Anfragen liefern hingegen Tripelmengen. Für CONSTRUCT-Anfragen bindet beispielsweise Virtuoso die Variablen „s“, „p“ und „o“ (<a href="Reifizierung#Informatik" class="mw-redirect" title="Reifizierung">Vergegenständlichung</a>).<sup id="cite_ref-45" class="reference"><a href="#cite_note-45"><span class="cite-bracket">[</span>45<span class="cite-bracket">]</span></a></sup> In keinem Fall entspricht das Muster dem von JSON-LD.
</p><p>Allerdings können SPARQL-Endpunkte (wie die von Virtuoso) bei CONSTRUCT- und DESCRIBE-Anfragen die Tripelmenge (neben vielen anderen konkreten RDF-Syntaxen) auch schon in JSON-LD liefern. Eine <a href="Reifizierung#Informatik" class="mw-redirect" title="Reifizierung">Vergegenständlichung</a> erübrigt sich hierbei.
</p><p><br>
</p>
<div class="mw-heading mw-heading2"><h2 id="Anwendungen_und_Anwender">Anwendungen und Anwender</h2></div>
<p>Zu einigen <a href="Early_Adopter" title="Early Adopter">frühen Anwendern</a>, welche die <a href="Diffusionstheorie" title="Diffusionstheorie">Übernahme</a> von JSON-LD in Produkte oder Dienste bis Juni 2014 zumindest angekündigt haben:<sup id="cite_ref-46" class="reference"><a href="#cite_note-46"><span class="cite-bracket">[</span>46<span class="cite-bracket">]</span></a></sup>
</p><p>Bereits im Mai 2013 hat <a href="Google_LLC" title="Google LLC">Google</a> angekündigt, JSON-LD zusätzlich zu <a href="HTML_Microdata" class="mw-redirect" title="HTML Microdata">HTML Microdata</a> in seinen Produkten zu unterstützen. Beispielsweise kann in HTML-E-Mails eingebettetes JSON-LD beim Eintreffen in der <a href="Mailbox_(Computer)" title="Mailbox (Computer)">Mailbox</a> extrahiert werden. Dem Empfänger werden die semantischen Daten so bei seiner <a href="Personalisierung_(Informationstechnik)" title="Personalisierung (Informationstechnik)">personalisierten</a> Suche verfügbar gemacht oder Eintragungen in den Terminkalender angeboten.<sup id="cite_ref-47" class="reference"><a href="#cite_note-47"><span class="cite-bracket">[</span>47<span class="cite-bracket">]</span></a></sup>
</p><p>Auch Produkte von <a href="Microsoft" title="Microsoft">Microsoft</a> können JSON-LD aus E-Mails lesen, um dem Empfänger darüber Dienste eines persönlichen Assistenten abhängig von Zeit und Aufenthaltsort anzubieten.<sup id="cite_ref-48" class="reference"><a href="#cite_note-48"><span class="cite-bracket">[</span>48<span class="cite-bracket">]</span></a></sup> Voraussetzung dafür ist, dass der Absender dazu (ebenso wie bei Google) das Vokabular von <a href="Schema.org" title="Schema.org">Schema.org</a> verwendet.
</p><p><a href="DBpedia" title="DBpedia">DBpedia</a> liefert (verlinkte) Daten, neben vielen anderen Formaten, auch in JSON-LD aus. Das dazu verwendete Virtuoso bietet in seiner <a href="Open_Source" title="Open Source">Open Source</a> Edition JSON-LD Serialisierung mindestens seit November 2011 an.<sup id="cite_ref-49" class="reference"><a href="#cite_note-49"><span class="cite-bracket">[</span>49<span class="cite-bracket">]</span></a></sup>
</p><p><a href="Schema.org" title="Schema.org">Schema.org</a> bekennt sich seit Juni 2013 zu JSON-LD<sup id="cite_ref-50" class="reference"><a href="#cite_note-50"><span class="cite-bracket">[</span>50<span class="cite-bracket">]</span></a></sup> und gibt Beispiele parallel zu RDFa und Microdata auch in JSON-LD. <span id="schema.org-Kontext"></span> Seit Mitte Juni 2014 wird außerdem ein JSON-LD-Kontext bereitgestellt.<sup id="cite_ref-51" class="reference"><a href="#cite_note-51"><span class="cite-bracket">[</span>51<span class="cite-bracket">]</span></a></sup><sup id="cite_ref-52" class="reference"><a href="#cite_note-52"><span class="cite-bracket">[</span>52<span class="cite-bracket">]</span></a></sup> Wenig später zog auch <a href="FOAF" title="FOAF">FOAF</a> gleich<sup id="cite_ref-53" class="reference"><a href="#cite_note-53"><span class="cite-bracket">[</span>53<span class="cite-bracket">]</span></a></sup> und stellt sogar die Ontology (<a href="RDF-Schema" title="RDF-Schema">RDF-Schema</a>/<a href="Web_Ontology_Language" title="Web Ontology Language">OWL</a>) direkt in JSON-LD zur Verfügung.
</p><p>Die erste RDF-Version von <a href="WordNet" title="WordNet">WordNet</a><sup id="cite_ref-54" class="reference"><a href="#cite_note-54"><span class="cite-bracket">[</span>54<span class="cite-bracket">]</span></a></sup> (vorgestellt im April 2014)<sup id="cite_ref-55" class="reference"><a href="#cite_note-55"><span class="cite-bracket">[</span>55<span class="cite-bracket">]</span></a></sup> liefert neben anderen RDF-Formaten auch JSON-LD schon seit Beginn (mittels RDFLib).
</p><p>Es ist zu erwarten, dass viele bestehende oder neue Angebote von <a href="Linked_Data" class="mw-redirect" title="Linked Data">Linked Data</a> früher oder später auch in diesem Format erfolgen werden.
</p>
<div class="mw-heading mw-heading3"><h3 id="Im_Bereich_der_Web-APIs">Im Bereich der Web-APIs</h3></div>
<p>JSON wurde bis zur Entwicklung von JSON-LD als Mittel zur allgemeinen Diensterbringung (über JSON-basierte Web-APIs) genutzt. Der Transport von RDF-Daten oder das <a href="Wissensmanagement" title="Wissensmanagement">Wissensmanagement</a> im <a href="Semantic_Web" title="Semantic Web">Semantic Web</a> (über die <a href="Resource_Description_Framework" title="Resource Description Framework">RDF</a>-Technologien) an sich war nicht seine Domäne.
</p><p>Wesentlich an der Entwicklung von JSON-LD Beteiligte sahen (nach eigenem Bekunden) den Wunsch nach besseren Web-APIs als Motivation für die Schaffung von JSON-LD, nicht das <a href="Semantic_Web" title="Semantic Web">Semantic Web</a>.<sup id="cite_ref-json-ld-origins-2_10-1" class="reference"><a href="#cite_note-json-ld-origins-2-10"><span class="cite-bracket">[</span>10<span class="cite-bracket">]</span></a></sup> Auf diesem Wege zu den JSON-basierten Web-Diensten (die sich durch die Nutzung der semantischen Technologien (mittels JSON-LD) fast zwangsläufig nahtlos in die „Linked Data Cloud“ integrieren<sup id="cite_ref-3gen-web-apis_7-3" class="reference"><a href="#cite_note-3gen-web-apis-7"><span class="cite-bracket">[</span>7<span class="cite-bracket">]</span></a></sup>) würde das Semantische Web jedoch schließlich Wirklichkeit werden.
</p><p>Naheliegend ist die semantische Anreicherung der Nutz- bzw. Inhaltsdaten durch die Verwendung wohlbekannter und maßgeschneiderter Vokabulare für den jeweiligen Gegenstandsbereich (also für Produkt- und Dokumentbeschreibungen, Preisangaben, Angebote, Aufträge, Bezahlarten, Termine, Akteure usw.). Darüber hinaus ist aber auch der Einsatz zur Dienst- und <a href="Schnittstellenbeschreibung" class="mw-redirect" title="Schnittstellenbeschreibung">Schnittstellenbeschreibung</a> (API/service description) bereits Gegenstand von Forschung und Entwicklung.
</p><p>Spätestens seit April 2012 wird JSON-LD im Zusammenhang mit dem <a href="Representational_State_Transfer" title="Representational State Transfer">REST</a>-Stil für <i><a href="Hypermedia" title="Hypermedia">hypermedia</a>-getriebene<sup id="cite_ref-hypermedia-driven_56-0" class="reference"><a href="#cite_note-hypermedia-driven-56"><span class="cite-bracket">[</span>56<span class="cite-bracket">]</span></a></sup> Webdienste</i> (der nächsten Generation) diskutiert.<sup id="cite_ref-jsonld4rest-paper_57-0" class="reference"><a href="#cite_note-jsonld4rest-paper-57"><span class="cite-bracket">[</span>57<span class="cite-bracket">]</span></a></sup>
</p><p>In <b>Hydra</b><sup id="cite_ref-58" class="reference"><a href="#cite_note-58"><span class="cite-bracket">[</span>58<span class="cite-bracket">]</span></a></sup> (das seit Juni 2013 auch Gegenstand einer <a href="World_Wide_Web_Consortium" title="World Wide Web Consortium">W3C</a> Community Group ist) kommt JSON-LD auf folgenden Ebenen zum Einsatz: (1) in den Nachrichten (mittels des API-Vokabulars des jeweiligen Dienstes), (2) in der (semantischen) API-Beschreibung (mittels des Hydra-Vokabulars sowie anderer wohlbekannter) und (3) in der Beschreibung des Hydra-Schemas zur API-Beschreibung (mittels des Vokabulars von <a href="RDF-Schema" title="RDF-Schema">RDF-Schema</a>). In dieser Konstellation würde JSON-LD an die Stelle des XML in Ansätzen wie <a href="Web_Services_Description_Language" title="Web Services Description Language">WSDL</a> (inklusive SAWSDL) und <a href="Web_Application_Description_Language" title="Web Application Description Language">WADL</a> bzw. des HTML+RDFa in SA-REST sowie an diejenige des Mikroformats in hRESTS und Micro<a href="Web_Service_Modeling_Ontology" title="Web Service Modeling Ontology">WSMO</a> treten. Zugleich modelliert es REST wie WADL und MicroWSMO.<sup id="cite_ref-3gen-web-apis_7-4" class="reference"><a href="#cite_note-3gen-web-apis-7"><span class="cite-bracket">[</span>7<span class="cite-bracket">]</span></a></sup>
</p><p>Seit April 2014 gibt es neben Hydra ein weiteres (für JSON-LD ausgelegtes) Vokabular,<sup id="cite_ref-59" class="reference"><a href="#cite_note-59"><span class="cite-bracket">[</span>59<span class="cite-bracket">]</span></a></sup> welches Einstiegspunkte (EntryPoint, target) in Dienste bzw. Operationen (mit Ein- und Ausgabe-Parametern) beschreiben kann: <i>schema.org v1.2</i> beinhaltet dazu (potentielle) Aktionen (Action, potentialAction) wie Anhören, Kaufen, Teilen, Kommentieren, Durchsuchen usw.<sup id="cite_ref-60" class="reference"><a href="#cite_note-60"><span class="cite-bracket">[</span>60<span class="cite-bracket">]</span></a></sup> Wie in Hydra können Eingabe-Elemente sogar an die <a href="Parameter_(Informatik)" title="Parameter (Informatik)">Parameter</a> von <a href="URL-Template" class="mw-redirect" title="URL-Template">URL-Templates</a> (nach RFC 6570<sup id="cite_ref-61" class="reference"><a href="#cite_note-61"><span class="cite-bracket">[</span>61<span class="cite-bracket">]</span></a></sup>) geknüpft werden. Diese Elemente (PropertyValueSpecification) orientieren sich am Input-Element von <a href="HTML5" title="HTML5">HTML5</a>, womit die Umsetzung in entsprechende Bedienelemente für den Benutzer weitgehend erklärt ist. Auf diese Weise erhält das HTML-freie JSON (über JSON-LD) die Fähigkeiten eines interaktiven <a href="Hypermedia" title="Hypermedia">Hypermediums</a>. Dienste wie <a href="Suchmaschine" title="Suchmaschine">Suchmaschinen</a> können damit allein aus einer RDF-<a href="Graphdatenbank" title="Graphdatenbank">Graphdatenbank</a>, Suchergebnisse unmittelbar mit (semantisch eingeordneten) Interaktionsangeboten (externer Anbieter) verbinden. Voraussetzung ist, wie bei Hydra, ein generischer Interpreter oder Client für die jeweilige Informations-Struktur, weil es im Gegensatz zu HTML sonst keine „Browser“ dafür gibt. Die Tripel in der Datenbank können freilich auch aus jedem anderen RDF-Serialisierungsformat stammen. <a href="Inserat" class="mw-redirect" title="Inserat">Inserenten</a> bzw. Websitebetreiber sind zwar auf RDF (und Schema.org) festgelegt, nicht jedoch unbedingt auf JSON-LD.
</p><p>Ansätze auf der Grundlage von JSON-LD (und damit RDF) stehen neben solchen, die zunächst direkt auf JSON aufsetzen. Neuere Versionen der <i><a href="Activity_Streams_2.0" title="Activity Streams 2.0">Activity Streams</a></i> (und der zugehörigen Action Handlers)<sup id="cite_ref-62" class="reference"><a href="#cite_note-62"><span class="cite-bracket">[</span>62<span class="cite-bracket">]</span></a></sup> sehen jedoch bereits eine Verarbeitung als JSON-LD vor, indem sie zumindest einen (nicht-normativen) JSON-LD-Kontext beinhalten.
</p><p>Generell können Spezifikationen, die auf JSON-LD und Hypermedia setzen, spätere Erweiterungen in die Vokabularschicht auslagern und relativ generische Anwendungsprogramme zur Laufzeit mit jeweils aktuellen Informationen zum API versorgen (wie über neue Aktionen bzw. Operationen und zugehörige Parameter und Rückgabewerte). Eine schwerfällige Abstimmung im Vorfeld oder nach Erweiterungen (durch den Informationsaustausch „<a href="Out_of_band" class="mw-redirect" title="Out of band">außerhalb des Kanals</a>“) soll damit weitgehend der Vergangenheit angehören.
</p>
<div class="mw-heading mw-heading2"><h2 id="Siehe_auch">Siehe auch</h2></div>
<ul><li><a href="Semantic_Web_Services" title="Semantic Web Services">Semantic Web Services</a></li>
<li><a href="Web_Service_Modeling_Ontology" title="Web Service Modeling Ontology">Web Service Modeling Ontology</a></li></ul>
<div class="mw-heading mw-heading2"><h2 id="Weblinks">Weblinks</h2></div>
<ul><li><a rel="nofollow" class="external text" href="https://json-ld.org/">json-ld.org</a> – Seite für Entwickler mit Browser-Tool („<a rel="nofollow" class="external text" href="https://json-ld.org/playground/index.html">Playground</a>“) (englisch)</li>
<li><a rel="nofollow" class="external text" href="http://www.markus-lanthaler.com/jsonld/playground/">JsonLD Playground von Markus Lanthaler</a> – Alternativer Spielplatz in <a href="PHP" title="PHP">PHP</a> (englisch)</li>
<li><a rel="nofollow" class="external text" href="http://semanticweb.com/tag/json-ld">Artikel mit dem Tag JSON-LD bei semanticweb.com</a> (englisch)</li></ul>
<div class="mw-heading mw-heading2"><h2 id="Einzelnachweise_und_Anmerkungen">Einzelnachweise und Anmerkungen</h2></div>
<ol class="references">
<li id="cite_note-linked-json-1"><span class="mw-cite-backlink"><a href="#cite_ref-linked-json_1-0">↑</a></span> <span class="reference-text"><span class="cite">Manu Sporny: <a rel="nofollow" class="external text" href="https://web.archive.org/web/20140617183310/http://manu.sporny.org/2011/linked-json/"><i>Linked JSON: RDF for the Masses.</i></a> In: <i>The Beautiful, Tormented Machine.</i> Archiviert vom <style data-mw-deduplicate="TemplateStyles:r250917974">
/* start https://de.wikipedia.org/ */
.mw-parser-output .dewiki-iconexternal>a{background-position:center right!important;background-repeat:no-repeat!important}body.skin-minerva .mw-parser-output .dewiki-iconexternal>a{background-image:url("./_mw_/OOjs_UI_icon_external-link-ltr-progressive.svg")!important;background-size:10px!important;padding-right:13px!important}body.skin-timeless .mw-parser-output .dewiki-iconexternal>a,body.skin-monobook .mw-parser-output .dewiki-iconexternal>a{background-image:url("./_mw_/MediaWiki_external_link_icon.svg")!important;padding-right:13px!important}body.skin-vector .mw-parser-output .dewiki-iconexternal>a{background-image:url("./_mw_/Link.ernal-small-ltr-progressive.svg")!important;background-size:0.857em!important;padding-right:1em!important}
/* end https://de.wikipedia.org/ */
</style><span class="dewiki-iconexternal"><a class="external text" href="https://redirecter.toolforge.org/?url=http%3A%2F%2Fmanu.sporny.org%2F2011%2Flinked-json%2F">Original</a></span> am <span style="white-space:nowrap;">17. Juni 2014</span><span>;</span><span class="Abrufdatum"> abgerufen am 1. Juni 2014</span> (englisch).</span><span style="display: none;" class="Z3988" title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Adc&rfr_id=info%3Asid%2Fde.wikipedia.org%3AJSON-LD&rft.title=Linked+JSON%3A+RDF+for+the+Masses&rft.description=Linked+JSON%3A+RDF+for+the+Masses&rft.identifier=https%3A%2F%2Fweb.archive.org%2Fweb%2F20140617183310%2Fhttp%3A%2F%2Fmanu.sporny.org%2F2011%2Flinked-json%2F&rft.creator=Manu+Sporny&rft.date=&rft.source=http://manu.sporny.org/2011/linked-json/&rft.language=en"> </span></span>
</li>
<li id="cite_note-has-been-published-2"><span class="mw-cite-backlink"><a href="#cite_ref-has-been-published_2-0">↑</a></span> <span class="reference-text">
<span class="cite">Ivan Herman: <a rel="nofollow" class="external text" href="https://www.w3.org/blog/data/2014/01/16/json-ld-has-been-published-as-a-w3c-recommendation/"><i>JSON-LD Has Been Published as a W3C Recommendation.</i></a><span class="Abrufdatum"> Abgerufen am 7. Juni 2014</span> (englisch).</span><span style="display: none;" class="Z3988" title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Adc&rfr_id=info%3Asid%2Fde.wikipedia.org%3AJSON-LD&rft.title=JSON-LD+Has+Been+Published+as+a+W3C+Recommendation&rft.description=JSON-LD+Has+Been+Published+as+a+W3C+Recommendation&rft.identifier=&rft.creator=Ivan+Herman&rft.date=&rft.language=en"> </span></span>
</li>
<li id="cite_note-json-ld-3"><span class="mw-cite-backlink">↑ <sup><a href="#cite_ref-json-ld_3-0">a</a></sup> <sup><a href="#cite_ref-json-ld_3-1">b</a></sup> <sup><a href="#cite_ref-json-ld_3-2">c</a></sup> <sup><a href="#cite_ref-json-ld_3-3">d</a></sup> <sup><a href="#cite_ref-json-ld_3-4">e</a></sup> <sup><a href="#cite_ref-json-ld_3-5">f</a></sup></span> <span class="reference-text">
<span class="cite">Manu Sporny, Gregg Kellogg, Markus Lanthaler, Editors: <a rel="nofollow" class="external text" href="https://www.w3.org/TR/2014/REC-json-ld-20140116/"><i>JSON-LD 1.0, A JSON-based Serialization for Linked Data, W3C Recommendation 16 January 2014.</i></a><span class="Abrufdatum"> Abgerufen am 4. Juni 2014</span> (englisch).</span><span style="display: none;" class="Z3988" title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Adc&rfr_id=info%3Asid%2Fde.wikipedia.org%3AJSON-LD&rft.title=JSON-LD+1.0%2C+A+JSON-based+Serialization+for+Linked+Data%2C+W3C+Recommendation+16+January+2014&rft.description=JSON-LD+1.0%2C+A+JSON-based+Serialization+for+Linked+Data%2C+W3C+Recommendation+16+January+2014&rft.identifier=&rft.creator=Manu+Sporny%2C+Gregg+Kellogg%2C+Markus+Lanthaler%2C+Editors&rft.date=&rft.language=en"> </span></span>
</li>
<li id="cite_note-json-ld-api-4"><span class="mw-cite-backlink">↑ <sup><a href="#cite_ref-json-ld-api_4-0">a</a></sup> <sup><a href="#cite_ref-json-ld-api_4-1">b</a></sup></span> <span class="reference-text">
<span class="cite">Markus Lanthaler, Gregg Kellogg, Manu Sporny, Editors: <a rel="nofollow" class="external text" href="https://www.w3.org/TR/2014/REC-json-ld-api-20140116/"><i>JSON-LD 1.0 Processing Algorithms and API, W3C Recommendation 16 January 2014.</i></a><span class="Abrufdatum"> Abgerufen am 4. Juni 2014</span> (englisch).</span><span style="display: none;" class="Z3988" title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Adc&rfr_id=info%3Asid%2Fde.wikipedia.org%3AJSON-LD&rft.title=JSON-LD+1.0+Processing+Algorithms+and+API%2C+W3C+Recommendation+16+January+2014&rft.description=JSON-LD+1.0+Processing+Algorithms+and+API%2C+W3C+Recommendation+16+January+2014&rft.identifier=&rft.creator=Markus+Lanthaler%2C+Gregg+Kellogg%2C+Manu+Sporny%2C+Editors&rft.date=&rft.language=en"> </span></span>
</li>
<li id="cite_note-5"><span class="mw-cite-backlink"><a href="#cite_ref-5">↑</a></span> <span class="reference-text">Für praktisch jede <a href="Programmiersprache" title="Programmiersprache">Programmiersprache</a>, die zur <a href="Web-Engineering" class="mw-redirect" title="Web-Engineering">Webentwicklung</a> benutzt wird, gibt es eine Konvention, JSON-Daten im <a href="Hauptspeicher" class="mw-redirect" title="Hauptspeicher">Hauptspeicher</a> zu verwalten.</span>
</li>
<li id="cite_note-6"><span class="mw-cite-backlink"><a href="#cite_ref-6">↑</a></span> <span class="reference-text">namentlich vom <a href="NoSQL" title="NoSQL">NoSQL</a>-Typ, der JSON nativ unterstützt wie <a href="MongoDB" title="MongoDB">MongoDB</a> und <a href="CouchDB" title="CouchDB">CouchDB</a>, aber auch <a href="SQL" title="SQL">SQL</a>-Datenbanken mit JSON-Unterstützung wie <a href="PostgreSQL" title="PostgreSQL">PostgreSQL</a> u. a.</span>
</li>
<li id="cite_note-3gen-web-apis-7"><span class="mw-cite-backlink">↑ <sup><a href="#cite_ref-3gen-web-apis_7-0">a</a></sup> <sup><a href="#cite_ref-3gen-web-apis_7-1">b</a></sup> <sup><a href="#cite_ref-3gen-web-apis_7-2">c</a></sup> <sup><a href="#cite_ref-3gen-web-apis_7-3">d</a></sup> <sup><a href="#cite_ref-3gen-web-apis_7-4">e</a></sup></span> <span class="reference-text">
Markus Lanthaler: <i>Third Generation Web APIs – Bridging the Gap between REST and Linked Data</i>. Doctoral Dissertation, Institute of Information Systems and Computer Media, Graz University of Technology, Austria, 5. März 2014, Abschnitt 5.3, Seiten 108–141, über <a rel="nofollow" class="external text" href="http://www.markus-lanthaler.com/publications">markus-lanthaler.com</a> (PDF) <a href="SHA1" class="mw-redirect" title="SHA1">SHA1</a> 0ab17eed62aeb2f56e8f8b1ab95ac9820e36c87a, abgerufen am 8. Juni 2014</span>
</li>
<li id="cite_note-8"><span class="mw-cite-backlink"><a href="#cite_ref-8">↑</a></span> <span class="reference-text"><span class="cite">Shane Becker: <a rel="nofollow" class="external text" href="https://web.archive.org/web/20140714210706/http://iamshane.com/articles/2013/8/8/1/json-ld-is-an-unneeded-spec"><i>JSON-LD is an Unneeded Spec.</i></a> Archiviert vom <span class="dewiki-iconexternal"><a class="external text" href="https://redirecter.toolforge.org/?url=http%3A%2F%2Fiamshane.com%2Farticles%2F2013%2F8%2F8%2F1%2Fjson-ld-is-an-unneeded-spec">Original</a></span> am <span style="white-space:nowrap;">14. Juli 2014</span><span>;</span><span class="Abrufdatum"> abgerufen am 3. Juni 2014</span> (englisch).</span><span style="display: none;" class="Z3988" title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Adc&rfr_id=info%3Asid%2Fde.wikipedia.org%3AJSON-LD&rft.title=JSON-LD+is+an+Unneeded+Spec&rft.description=JSON-LD+is+an+Unneeded+Spec&rft.identifier=https%3A%2F%2Fweb.archive.org%2Fweb%2F20140714210706%2Fhttp%3A%2F%2Fiamshane.com%2Farticles%2F2013%2F8%2F8%2F1%2Fjson-ld-is-an-unneeded-spec&rft.creator=Shane+Becker&rft.date=&rft.source=http://iamshane.com/articles/2013/8/8/1/json-ld-is-an-unneeded-spec&rft.language=en"> </span></span>
</li>
<li id="cite_note-rdf-in-json-9"><span class="mw-cite-backlink">↑ <sup><a href="#cite_ref-rdf-in-json_9-0">a</a></sup> <sup><a href="#cite_ref-rdf-in-json_9-1">b</a></sup> <sup><a href="#cite_ref-rdf-in-json_9-2">c</a></sup></span> <span class="reference-text">
Keith Alexander: <i>RDF in JSON: A Specification for serialising RDF in JSON</i> In: <a rel="nofollow" class="external text" href="https://ceur-ws.org/Vol-368/">Proceedings of the 4th Workshop on Scripting for the Semantic Web</a>, Tenerife, Spain, June 02, 2008, <a rel="nofollow" class="external text" href="https://ceur-ws.org/">CEUR Workshop Proceedings</a>, <span class="-print"><a href="Internationale_Standardnummer_f%C3%BCr_fortlaufende_Sammelwerke" title="Internationale Standardnummer für fortlaufende Sammelwerke">ISSN</a> <span style="white-space:nowrap"><a rel="nofollow" class="external text" href="https://zdb-katalog.de/list.xhtml?t=iss%3D%221613-0073%22&key=cql">1613-0073</a></span></span>, <a rel="nofollow" class="external text" href="https://ceur-ws.org/Vol-368/paper16.pdf">CEUR-WS.org</a> (PDF; 116 kB)</span>
</li>
<li id="cite_note-json-ld-origins-2-10"><span class="mw-cite-backlink">↑ <sup><a href="#cite_ref-json-ld-origins-2_10-0">a</a></sup> <sup><a href="#cite_ref-json-ld-origins-2_10-1">b</a></sup></span> <span class="reference-text"><span class="cite">Manu Sporny: <a rel="nofollow" class="external text" href="https://web.archive.org/web/20140529155400/http://manu.sporny.org/2014/json-ld-origins-2/"><i>JSON-LD and Why I Hate the Semantic Web.</i></a> In: <i>The Beautiful, Tormented Machine.</i> Archiviert vom <span class="dewiki-iconexternal"><a class="external text" href="https://redirecter.toolforge.org/?url=http%3A%2F%2Fmanu.sporny.org%2F2014%2Fjson-ld-origins-2%2F">Original</a></span> am <span style="white-space:nowrap;">29. Mai 2014</span><span>;</span><span class="Abrufdatum"> abgerufen am 6. Juni 2014</span> (englisch).</span><span style="display: none;" class="Z3988" title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Adc&rfr_id=info%3Asid%2Fde.wikipedia.org%3AJSON-LD&rft.title=JSON-LD+and+Why+I+Hate+the+Semantic+Web&rft.description=JSON-LD+and+Why+I+Hate+the+Semantic+Web&rft.identifier=https%3A%2F%2Fweb.archive.org%2Fweb%2F20140529155400%2Fhttp%3A%2F%2Fmanu.sporny.org%2F2014%2Fjson-ld-origins-2%2F&rft.creator=Manu+Sporny&rft.date=&rft.source=http://manu.sporny.org/2014/json-ld-origins-2/&rft.language=en"> </span></span>
</li>
<li id="cite_note-json-ld-is-the-bees-knees-11"><span class="mw-cite-backlink"><a href="#cite_ref-json-ld-is-the-bees-knees_11-0">↑</a></span> <span class="reference-text"><span class="cite">Manu Sporny: <a rel="nofollow" class="external text" href="https://web.archive.org/web/20140618225439/http://manu.sporny.org/2013/json-ld-is-the-bees-knees/"><i>JSON-LD is the Bee’s Knees.</i></a> In: <i>The Beautiful, Tormented Machine.</i> Archiviert vom <span class="dewiki-iconexternal"><a class="external text" href="https://redirecter.toolforge.org/?url=http%3A%2F%2Fmanu.sporny.org%2F2013%2Fjson-ld-is-the-bees-knees%2F">Original</a></span> am <span style="white-space:nowrap;">18. Juni 2014</span><span>;</span><span class="Abrufdatum"> abgerufen am 4. Juni 2014</span> (englisch).</span><span style="display: none;" class="Z3988" title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Adc&rfr_id=info%3Asid%2Fde.wikipedia.org%3AJSON-LD&rft.title=JSON-LD+is+the+Bee%E2%80%99s+Knees&rft.description=JSON-LD+is+the+Bee%E2%80%99s+Knees&rft.identifier=https%3A%2F%2Fweb.archive.org%2Fweb%2F20140618225439%2Fhttp%3A%2F%2Fmanu.sporny.org%2F2013%2Fjson-ld-is-the-bees-knees%2F&rft.creator=Manu+Sporny&rft.date=&rft.source=http://manu.sporny.org/2013/json-ld-is-the-bees-knees/&rft.language=en"> </span></span>
</li>
<li id="cite_note-12"><span class="mw-cite-backlink"><a href="#cite_ref-12">↑</a></span> <span class="reference-text">Es ist allerdings zulässig, die von einem Knoten ausgehenden Kanten auf beliebig viele JSON-Objekte (mit gleicher „@id“) zu verteilen („Knoten-Objekte“). Diese werden dann durch die empfohlenen Algorithmen zu einem Objekt verschmolzen. Hierbei handelt es sich jedoch nicht um eine bevorzugte Form bzw. Zielform von JSON-LD.</span>
</li>
<li id="cite_note-13"><span class="mw-cite-backlink"><a href="#cite_ref-13">↑</a></span> <span class="reference-text">Ebenso für Mengen von Graphen, die flach als 4-Tupel (Quads) repräsentiert werden würden: Gruppierung nach dem Namen der Menge.</span>
</li>
<li id="cite_note-14"><span class="mw-cite-backlink"><a href="#cite_ref-14">↑</a></span> <span class="reference-text"><a rel="nofollow" class="external text" href="https://www.w3.org/TR/2014/NOTE-rdf11-new-20140225/">What’s New in RDF 1.1</a> w3.org</span>
</li>
<li id="cite_note-draftpbryan-zyp-json-ref-03-15"><span class="mw-cite-backlink"><a href="#cite_ref-draftpbryan-zyp-json-ref-03_15-0">↑</a></span> <span class="reference-text"><span class="cite">P. C. Bryan, K. Zyp: <a rel="nofollow" class="external text" href="https://datatracker.ietf.org/doc/html/draft-pbryan-zyp-json-ref-03"><i>JSON Reference.</i></a> Entwurf. In: <i>Internet Engineering Task Force (IETF).</i> 16. September 2012,<span class="Abrufdatum"> abgerufen am 8. August 2025</span> (englisch).</span><span style="display: none;" class="Z3988" title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Adc&rfr_id=info%3Asid%2Fde.wikipedia.org%3AJSON-LD&rft.title=JSON+Reference&rft.description=JSON+Reference&rft.identifier=https%3A%2F%2Fdatatracker.ietf.org%2Fdoc%2Fhtml%2Fdraft-pbryan-zyp-json-ref-03&rft.creator=P.+C.+Bryan%2C+K.+Zyp&rft.date=2012-09-16&rft.language=en"> </span></span>
</li>
<li id="cite_note-rdf11-concepts-16"><span class="mw-cite-backlink">↑ <sup><a href="#cite_ref-rdf11-concepts_16-0">a</a></sup> <sup><a href="#cite_ref-rdf11-concepts_16-1">b</a></sup></span> <span class="reference-text">
<span class="cite">Richard Cyganiak, David Wood, Markus Lanthaler: <a rel="nofollow" class="external text" href="https://www.w3.org/TR/2014/REC-rdf11-concepts-20140225/"><i>RDF 1.1 Concepts and Abstract Syntax – W3C Recommendation 25 February 2014.</i></a> In: <i>W3C Recommendation.</i><span class="Abrufdatum"> Abgerufen am 11. Juni 2014</span> (englisch).</span><span style="display: none;" class="Z3988" title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Adc&rfr_id=info%3Asid%2Fde.wikipedia.org%3AJSON-LD&rft.title=RDF+1.1+Concepts+and+Abstract+Syntax+%E2%80%93+W3C+Recommendation+25+February+2014&rft.description=RDF+1.1+Concepts+and+Abstract+Syntax+%E2%80%93+W3C+Recommendation+25+February+2014&rft.identifier=&rft.creator=Richard+Cyganiak%2C+David+Wood%2C+Markus+Lanthaler&rft.date=&rft.language=en"> </span></span>
</li>
<li id="cite_note-17"><span class="mw-cite-backlink"><a href="#cite_ref-17">↑</a></span> <span class="reference-text"><a rel="nofollow" class="external text" href="http://json-schema.org/">json-schema.org</a></span>
</li>
<li id="cite_note-18"><span class="mw-cite-backlink"><a href="#cite_ref-18">↑</a></span> <span class="reference-text">Beispielsweise verwendet das <a rel="nofollow" class="external text" href="http://popoloproject.com/">Popolo Project</a> JSON Schema und JSON-LD-Kontexte parallel, um für eine einheitliche und validierbare JSON-Form zu sorgen.</span>
</li>
<li id="cite_note-draft-kelly-json-hal-06-19"><span class="mw-cite-backlink"><a href="#cite_ref-draft-kelly-json-hal-06_19-0">↑</a></span> <span class="reference-text">
M. Kelly: <a rel="nofollow" class="external text" href="http://tools.ietf.org/html/draft-kelly-json-hal-06"><i>JSON Hypertext Application Language</i>.</a> In: Internet Engineering Task Force (IETF) Draft</span>
</li>
<li id="cite_note-20"><span class="mw-cite-backlink"><a href="#cite_ref-20">↑</a></span> <span class="reference-text"><i><a href="Request_for_Comments" title="Request for Comments">RFC</a>: <span class="dewiki-iconexternal"><a href="https://datatracker.ietf.org/doc/html/rfc4627" class="extiw external" title="rfc:4627">4627</a></span></i> – <i><span lang="en">The application/json Media Type for JavaScript Object Notation (JSON)</span></i>. Juli 2006 (englisch). </span>
</li>
<li id="cite_note-21"><span class="mw-cite-backlink"><a href="#cite_ref-21">↑</a></span> <span class="reference-text"><i><a href="Request_for_Comments" title="Request for Comments">RFC</a>: <span class="dewiki-iconexternal"><a href="https://datatracker.ietf.org/doc/html/rfc4627" class="extiw external" title="rfc:4627">4627</a></span></i> – <i><span lang="en">The application/json Media Type for JavaScript Object Notation (JSON)</span></i>. Juli 2006 (englisch).</span>
</li>
<li id="cite_note-22"><span class="mw-cite-backlink"><a href="#cite_ref-22">↑</a></span> <span class="reference-text"><i><a href="Request_for_Comments" title="Request for Comments">RFC</a>: <span class="dewiki-iconexternal"><a href="https://datatracker.ietf.org/doc/html/rfc3987" class="extiw external" title="rfc:3987">3987</a></span></i> – <i><span lang="en">Internationalized Resource Identifiers (IRIs)</span></i>. Januar 2005 (englisch).</span>
</li>
<li id="cite_note-23"><span class="mw-cite-backlink"><a href="#cite_ref-23">↑</a></span> <span class="reference-text"><i><a href="Request_for_Comments" title="Request for Comments">RFC</a>: <span class="dewiki-iconexternal"><a href="https://datatracker.ietf.org/doc/html/rfc5646" class="extiw external" title="rfc:5646">5646</a></span></i> – <i><span lang="en">Tags for Identifying Languages</span></i>. September 2009 – Standard: [BCP47] (englisch). alias <a rel="nofollow" class="external text" href="http://tools.ietf.org/html/bcp47">BCP47</a></span>
</li>
<li id="cite_note-24"><span class="mw-cite-backlink"><a href="#cite_ref-24">↑</a></span> <span class="reference-text">auch: Schlüssel, Schlüsselwerte oder Eigenschaften genannt</span>
</li>
<li id="cite_note-25"><span class="mw-cite-backlink"><a href="#cite_ref-25">↑</a></span> <span class="reference-text">Dieses Konstrukt ist verwandt mit Namensraum-Präfixen bzw. -IRIs in anderen konkreten Serialisierungen von RDF, sowie mit <a href="CURIE" title="CURIE">CURIEs</a> (compact URI expressions aus RDFa) und <a href="QName" title="QName">QNames</a> aus XML.</span>
</li>
<li id="cite_note-26"><span class="mw-cite-backlink"><a href="#cite_ref-26">↑</a></span> <span class="reference-text">Siehe auch Anmerkung zum <a href="#schema.org-Kontext">schema.org-Kontext</a></span>
</li>
<li id="cite_note-27"><span class="mw-cite-backlink"><a href="#cite_ref-27">↑</a></span> <span class="reference-text"><a rel="nofollow" class="external text" href="https://www.w3.org/ns/json-ld">JSON-LD-Namensraum.</a> w3.org</span>
</li>
<li id="cite_note-28"><span class="mw-cite-backlink"><a href="#cite_ref-28">↑</a></span> <span class="reference-text">deren Name beispielsweise kein IRI oder Schlüsselwort wie @id oder @type ist und auch zu keinem expandiert</span>
</li>
<li id="cite_note-29"><span class="mw-cite-backlink"><a href="#cite_ref-29">↑</a></span> <span class="reference-text">abhängig davon, ob mehr als ein RDF-Graph zu erwarten ist; Listen würden die Tiefe zusätzlich um maximal eins erhöhen, weil sie nicht geschachtelt werden dürfen.</span>
</li>
<li id="cite_note-30"><span class="mw-cite-backlink"><a href="#cite_ref-30">↑</a></span> <span class="reference-text">Die <a href="Indexstruktur" title="Indexstruktur">Indexierung</a> nach den „@id“s der Subjekte ist beispielsweise nicht vorgesehen, weil sich dies mit ein paar Zeilen Programmcode bei Bedarf leicht realisieren lässt. Des Weiteren haben Anwendungen auch Bedarf zur Indexierung nach komplexeren Kriterien.</span>
</li>
<li id="cite_note-rdf11-mt-31"><span class="mw-cite-backlink"><a href="#cite_ref-rdf11-mt_31-0">↑</a></span> <span class="reference-text">
<span class="cite">Patrick J. Hayes, Peter F. Patel-Schneider: <a rel="nofollow" class="external text" href="https://www.w3.org/TR/2014/REC-rdf11-mt-20140225/"><i>RDF 1.1 Semantics – W3C Recommendation 25 February 2014.</i></a> In: <i>W3C Recommendation.</i><span class="Abrufdatum"> Abgerufen am 11. Juni 2014</span> (englisch).</span><span style="display: none;" class="Z3988" title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Adc&rfr_id=info%3Asid%2Fde.wikipedia.org%3AJSON-LD&rft.title=RDF+1.1+Semantics+%E2%80%93+W3C+Recommendation+25+February+2014&rft.description=RDF+1.1+Semantics+%E2%80%93+W3C+Recommendation+25+February+2014&rft.identifier=&rft.creator=Patrick+J.+Hayes%2C+Peter+F.+Patel-Schneider&rft.date=&rft.language=en"> </span></span>
</li>
<li id="cite_note-32"><span class="mw-cite-backlink"><a href="#cite_ref-32">↑</a></span> <span class="reference-text"><a rel="nofollow" class="external text" href="https://www.w3.org/ns/json-ld">JSON-LD-Namensraum</a></span>
</li>
<li id="cite_note-iri-deref-33"><span class="mw-cite-backlink">↑ <sup><a href="#cite_ref-iri-deref_33-0">a</a></sup> <sup><a href="#cite_ref-iri-deref_33-1">b</a></sup></span> <span class="reference-text">
Die alternative, format-neutrale AlbertsIRI aus dem Kommentar <a href="#API-Beispiel">zum API-Beispiel</a> ist eigentlich vorzuziehen, stellt jedoch wegen <a href="Content_Negotiation" title="Content Negotiation">Content Negotiation</a> und <a href="Weiterleitung" title="Weiterleitung">HTTP-Redirects</a> höhere Anforderungen an den eingebauten oder benutzerdefinierten documentLoader bzw. an das Zusammenspiel mit der DBpedia. Siehe auch:<br> <span class="cite">Chris Bizer, Richard Cyganiak, Tom Heath: <a rel="nofollow" class="external text" href="https://web.archive.org/web/20210419093458/http://wifo5-03.informatik.uni-mannheim.de/bizer/pub/LinkedDataTutorial/"><i>How to Publish Linked Data on the Web.</i></a> Archiviert vom <span class="dewiki-iconexternal"><a class="external text" href="https://redirecter.toolforge.org/?url=http%3A%2F%2Fwifo5-03.informatik.uni-mannheim.de%2Fbizer%2Fpub%2FLinkedDataTutorial%2F">Original</a></span> am <span style="white-space:nowrap;">19. April 2021</span><span>;</span><span class="Abrufdatum"> abgerufen am 6. Juni 2014</span> (englisch).</span><span style="display: none;" class="Z3988" title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Adc&rfr_id=info%3Asid%2Fde.wikipedia.org%3AJSON-LD&rft.title=How+to+Publish+Linked+Data+on+the+Web&rft.description=How+to+Publish+Linked+Data+on+the+Web&rft.identifier=https%3A%2F%2Fweb.archive.org%2Fweb%2F20210419093458%2Fhttp%3A%2F%2Fwifo5-03.informatik.uni-mannheim.de%2Fbizer%2Fpub%2FLinkedDataTutorial%2F&rft.creator=Chris+Bizer%2C+Richard+Cyganiak%2C+Tom+Heath&rft.date=&rft.source=http://wifo5-03.informatik.uni-mannheim.de/bizer/pub/LinkedDataTutorial/&rft.language=en"> </span> und<br> <span class="cite">Leo Sauermann, Richard Cyganiak (eds.): <a rel="nofollow" class="external text" href="https://www.w3.org/TR/cooluris/"><i>Cool URIs for the Semantic Web.</i></a> In: <i>W3C Interest Group Note.</i><span class="Abrufdatum"> Abgerufen am 11. Juni 2014</span> (englisch).</span><span style="display: none;" class="Z3988" title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Adc&rfr_id=info%3Asid%2Fde.wikipedia.org%3AJSON-LD&rft.title=Cool+URIs+for+the+Semantic+Web&rft.description=Cool+URIs+for+the+Semantic+Web&rft.identifier=&rft.creator=Leo+Sauermann%2C+Richard+Cyganiak+%28eds.%29&rft.date=&rft.language=en"> </span> (Work in progress), sowie<br> Tom Heath and Christian Bizer (2011) <i>Linked Data: Evolving the Web into a Global Data Space</i> (1st edition). Synthesis Lectures on the Semantic Web: Theory and Technology, 1:1, 1-136. Morgan & Claypool. Per Access Option <a rel="nofollow" class="external text" href="http://linkeddatabook.com/book">Free HTML Version</a>, abgerufen am 11. Juni 2014, Chapter 2.3 Making URIs Defererenceable (Schreibfehler im Original)</span>
</li>
<li id="cite_note-34"><span class="mw-cite-backlink"><a href="#cite_ref-34">↑</a></span> <span class="reference-text"><i><a href="Request_for_Comments" title="Request for Comments">RFC</a>: <span class="dewiki-iconexternal"><a href="https://datatracker.ietf.org/doc/html/rfc6838" class="extiw external" title="rfc:6838">6838</a></span></i> – <i><span lang="en">Media Type Specifications and Registration Procedures</span></i>. Januar 2013 (englisch).</span>
</li>
<li id="cite_note-35"><span class="mw-cite-backlink"><a href="#cite_ref-35">↑</a></span> <span class="reference-text"><i><a href="Request_for_Comments" title="Request for Comments">RFC</a>: <span class="dewiki-iconexternal"><a href="https://datatracker.ietf.org/doc/html/rfc6839" class="extiw external" title="rfc:6839">6839</a></span></i> – <i><span lang="en">Additional Media Type Structured Syntax Suffixes</span></i>. Januar 2013 (englisch).</span>
</li>
<li id="cite_note-36"><span class="mw-cite-backlink"><a href="#cite_ref-36">↑</a></span> <span class="reference-text">womit jedoch noch nichts für die Eignung in <a href="Produktionssystem_(Informatik)" title="Produktionssystem (Informatik)">Produktivsystemen</a> ausgesagt ist</span>
</li>
<li id="cite_note-37"><span class="mw-cite-backlink"><a href="#cite_ref-37">↑</a></span> <span class="reference-text">Die Empfehlung räumt ein: Selbst die erfolgreiche Absolvierung aller Tests gewährleistet nicht die vollständige Konformität.</span>
</li>
<li id="cite_note-38"><span class="mw-cite-backlink"><a href="#cite_ref-38">↑</a></span> <span class="reference-text">Alex Stolz, Bene Rodriguez-Castro, Martin Hepp: <i>RDF Translator: A RESTful Multi-Format Data Converter for the Semantic Web</i>, Technical Report TR-2013-1, E-Business and Web Science Research Group, Universität der Bundeswehr München, 2013, <a href="ArXiv" title="ArXiv">arxiv</a>:<a rel="nofollow" class="external text" href="https://arxiv.org/abs/1312.4704">1312.4704</a> </span>
</li>
<li id="cite_note-rdf-json-39"><span class="mw-cite-backlink"><a href="#cite_ref-rdf-json_39-0">↑</a></span> <span class="reference-text">
<a rel="nofollow" class="external text" href="https://www.w3.org/TR/rdf-json/"><i>RDF 1.1 JSON Alternate Serialization (RDF/JSON)</i>.</a> W3C Working Group, Note 7. November 2013</span>
</li>
<li id="cite_note-the-state-of-rdf-and-json-40"><span class="mw-cite-backlink"><a href="#cite_ref-the-state-of-rdf-and-json_40-0">↑</a></span> <span class="reference-text">
David Wood: <a rel="nofollow" class="external text" href="https://www.w3.org/blog/SW/2011/09/13/the-state-of-rdf-and-json/"><i>The State of RDF and JSON</i>.</a> 13. September 2011. In: <i>Semantic Web Activity News</i></span>
</li>
<li id="cite_note-rdfj-41"><span class="mw-cite-backlink"><a href="#cite_ref-rdfj_41-0">↑</a></span> <span class="reference-text">
<span class="cite">Mark Birbeck (u. a.): <a rel="nofollow" class="external text" href="https://code.google.com/p/backplanejs/wiki/Rdfj"><i>Rdfj.</i></a> In: <i><a rel="nofollow" class="external text" href="https://code.google.com/p/backplanejs/">backplanejs – A JavaScript library that provides cross-browser XForms, RDFa, and SMIL support.</a></i><span class="Abrufdatum"> Abgerufen am 9. Juni 2014</span> (englisch).</span><span style="display: none;" class="Z3988" title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Adc&rfr_id=info%3Asid%2Fde.wikipedia.org%3AJSON-LD&rft.title=Rdfj&rft.description=Rdfj&rft.identifier=&rft.creator=Mark+Birbeck+%28u.%26nbsp%3Ba.%29&rft.date=&rft.language=en"> </span></span>
</li>
<li id="cite_note-JSON+RDF-42"><span class="mw-cite-backlink"><a href="#cite_ref-JSON+RDF_42-0">↑</a></span> <span class="reference-text">
<span class="cite"><a rel="nofollow" class="external text" href="https://www.w3.org/wiki/index.php?title=JSON%2BRDF&oldid=53808"><i>JSON+RDF.</i></a> In: <i>w3.org.</i><span class="Abrufdatum"> Abgerufen am 9. Juni 2014</span> (englisch).</span><span style="display: none;" class="Z3988" title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Adc&rfr_id=info%3Asid%2Fde.wikipedia.org%3AJSON-LD&rft.title=JSON%2BRDF&rft.description=JSON%2BRDF&rft.identifier=&rft.date=&rft.language=en"> </span></span>
</li>
<li id="cite_note-43"><span class="mw-cite-backlink"><a href="#cite_ref-43">↑</a></span> <span class="reference-text"><a rel="nofollow" class="external text" href="https://www.w3.org/TR/microdata/">w3.org</a></span>
</li>
<li id="cite_note-sparql11-results-json-44"><span class="mw-cite-backlink"><a href="#cite_ref-sparql11-results-json_44-0">↑</a></span> <span class="reference-text">
<a rel="nofollow" class="external text" href="https://www.w3.org/TR/sparql11-results-json/">SPARQL 1.1 Query Results JSON Format</a></span>
</li>
<li id="cite_note-45"><span class="mw-cite-backlink"><a href="#cite_ref-45">↑</a></span> <span class="reference-text">siehe auch: <a rel="nofollow" class="external text" href="https://www.w3.org/wiki/TriplesInJSON">TriplesInJson</a> w3.org</span>
</li>
<li id="cite_note-46"><span class="mw-cite-backlink"><a href="#cite_ref-46">↑</a></span> <span class="reference-text">Auswahl ohne Anspruch auf Vollständigkeit; json-ld.org führt eine <a rel="nofollow" class="external text" href="https://github.com/json-ld/json-ld.org/wiki/Users-of-JSON-LD">Liste dazu unter Github</a>.</span>
</li>
<li id="cite_note-47"><span class="mw-cite-backlink"><a href="#cite_ref-47">↑</a></span> <span class="reference-text"><span class="cite">Jennifer Zaino: <a rel="nofollow" class="external text" href="https://web.archive.org/web/20140714223513/https://semanticweb.com/gmail-meet-json-ld_b37211"><i>Gmail, Meet JSON-LD.</i></a> In: <i>semanticweb.com.</i> 17. Mai 2013, archiviert vom <span class="dewiki-iconexternal"><a class="external text" href="https://redirecter.toolforge.org/?url=https%3A%2F%2Fsemanticweb.com%2Fgmail-meet-json-ld_b37211">Original</a></span> am <span style="white-space:nowrap;">14. Juli 2014</span><span>;</span><span class="Abrufdatum"> abgerufen am 9. Juni 2014</span> (englisch).</span><span style="display: none;" class="Z3988" title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Adc&rfr_id=info%3Asid%2Fde.wikipedia.org%3AJSON-LD&rft.title=Gmail%2C+Meet+JSON-LD&rft.description=Gmail%2C+Meet+JSON-LD&rft.identifier=https%3A%2F%2Fweb.archive.org%2Fweb%2F20140714223513%2Fhttps%3A%2F%2Fsemanticweb.com%2Fgmail-meet-json-ld_b37211&rft.creator=Jennifer+Zaino&rft.date=2013-05-17&rft.source=https://semanticweb.com/gmail-meet-json-ld_b37211&rft.language=en"> </span></span>
</li>
<li id="cite_note-48"><span class="mw-cite-backlink"><a href="#cite_ref-48">↑</a></span> <span class="reference-text"><a rel="nofollow" class="external text" href="http://msdn.microsoft.com/en-us/library/dn632191.aspx">Sending flight information to Microsoft Cortana with contextual awareness</a></span>
</li>
<li id="cite_note-49"><span class="mw-cite-backlink"><a href="#cite_ref-49">↑</a></span> <span class="reference-text">Virtuoso Open-Source Wiki: <a rel="nofollow" class="external text" href="http://virtuoso.openlinksw.com/dataspace/doc/dav/wiki/Main/VOSNews2011">Virtuoso Open Source Edition News (2011)</a></span>
</li>
<li id="cite_note-50"><span class="mw-cite-backlink"><a href="#cite_ref-50">↑</a></span> <span class="reference-text"><span class="cite"><a rel="nofollow" class="external text" href="https://web.archive.org/web/20130608073029/http://blog.schema.org/2013/06/schemaorg-and-json-ld.html"><i>Schema.org and JSON-LD.</i></a> In: <i>blog.schema.org.</i> 3. Juni 2013, archiviert vom <span class="dewiki-iconexternal"><a class="external text" href="https://redirecter.toolforge.org/?url=http%3A%2F%2Fblog.schema.org%2F2013%2F06%2Fschemaorg-and-json-ld.html">Original</a></span> am <span style="white-space:nowrap;">8. Juni 2013</span><span>;</span><span class="Abrufdatum"> abgerufen am 8. August 2025</span> (englisch).</span><span style="display: none;" class="Z3988" title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Adc&rfr_id=info%3Asid%2Fde.wikipedia.org%3AJSON-LD&rft.title=Schema.org+and+JSON-LD&rft.description=Schema.org+and+JSON-LD&rft.identifier=https%3A%2F%2Fweb.archive.org%2Fweb%2F20130608073029%2Fhttp%3A%2F%2Fblog.schema.org%2F2013%2F06%2Fschemaorg-and-json-ld.html&rft.date=2013-06-03&rft.source=http://blog.schema.org/2013/06/schemaorg-and-json-ld.html&rft.language=en"> </span></span>
</li>
<li id="cite_note-51"><span class="mw-cite-backlink"><a href="#cite_ref-51">↑</a></span> <span class="reference-text"><a rel="nofollow" class="external text" href="https://lists.w3.org/Archives/Public/public-linked-json/2014Jun/0020.html">lists.w3.org</a></span>
</li>
<li id="cite_note-52"><span class="mw-cite-backlink"><a href="#cite_ref-52">↑</a></span> <span class="reference-text">Damit werden auch (schon länger im Umlauf befindliche) Beispiele generell funktionsfähig, die <a rel="nofollow" class="external text" href="https://schema.org/">schema.org</a> als @context referenzieren. Dies war vorher nur in Umgebungen der Fall, welche diese URL intern mit einem passenden Kontext verbanden.</span>
</li>
<li id="cite_note-53"><span class="mw-cite-backlink"><a href="#cite_ref-53">↑</a></span> <span class="reference-text"><style data-mw-deduplicate="TemplateStyles:r261891140">
/* start https://de.wikipedia.org/ */
.mw-parser-output .webarchiv-memento a{color:inherit}
/* end https://de.wikipedia.org/ */
</style><a rel="nofollow" class="external text" href="https://web.archive.org/web/20140714200742/http://comments.gmane.org/gmane.comp.web.rdfweb/4295">gmane.org</a> (<span class="webarchiv-memento"><a href="Webarchivierung#Begrifflichkeiten" title="Webarchivierung">Memento</a></span> vom 14. Juli 2014 im <i><a href="Internet_Archive" title="Internet Archive">Internet Archive</a></i>)</span>
</li>
<li id="cite_note-54"><span class="mw-cite-backlink"><a href="#cite_ref-54">↑</a></span> <span class="reference-text"><a rel="nofollow" class="external text" href="http://wordnet-rdf.princeton.edu/">wordnet-rdf.princeton.edu</a></span>
</li>
<li id="cite_note-55"><span class="mw-cite-backlink"><a href="#cite_ref-55">↑</a></span> <span class="reference-text"><a rel="nofollow" class="external text" href="https://web.archive.org/web/20140714133127/http://t171795.web-semantic-linking-open-data.htmltalk.us/princeton-wordnet-rdf-t171795.html">htmltalk.us</a> (<span class="webarchiv-memento"><a href="Webarchivierung#Begrifflichkeiten" title="Webarchivierung">Memento</a></span> vom 14. Juli 2014 im <i><a href="Internet_Archive" title="Internet Archive">Internet Archive</a></i>)</span>
</li>
<li id="cite_note-hypermedia-driven-56"><span class="mw-cite-backlink"><a href="#cite_ref-hypermedia-driven_56-0">↑</a></span> <span class="reference-text">
Beim hypermedia-getriebenen Ansatz (mit JSON-LD) reicht es (ähnlich wie bei der menschlichen Interaktion mit einer Webseite), einen Einstiegspunkt (entry point) in den Dienst zu finden. Alle weiteren Links und (Selbst-)Beschreibungen dazu sind maschinenlesbar über JSON-LD-Kontexte miteinander verknüpft: Literale und IRIs für Ressourcen in einer Antwort sind verknüpft mit Operationen, die darauf angewendet werden können. Deren Anwendung kann wieder zu solch einer Antwort führen, usf. (Sowohl Entwickler als auch flexible Software-Agenten könnten einen Dienst so schrittweise und standardisiert erkunden, um einen Weg zu finden, ihr eigentliches Ziels zu erreichen.)</span>
</li>
<li id="cite_note-jsonld4rest-paper-57"><span class="mw-cite-backlink"><a href="#cite_ref-jsonld4rest-paper_57-0">↑</a></span> <span class="reference-text">
<span class="cite">Markus Lanthaler, Christian Gütl: <a rel="nofollow" class="external text" href="https://www.markus-lanthaler.com/research/on-using-json-ld-to-create-evolvable-restful-services.pdf"><i>On Using JSON-LD to Create Evolvable RESTful Services.</i></a> (PDF) In: <i>Proceedings of the Third International Workshop on RESTful Design.</i> 2012, <span style="white-space:nowrap;">S. 25–32</span>,<span class="Abrufdatum"> abgerufen am 21. Juni 2014</span> (englisch, <a href="SHA1" class="mw-redirect" title="SHA1">SHA1</a> ba69b6c33792344fb189903792ec955af4aa0a98).</span><span style="display: none;" class="Z3988" title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Adc&rfr_id=info%3Asid%2Fde.wikipedia.org%3AJSON-LD&rft.title=On+Using+JSON-LD+to+Create+Evolvable+RESTful+Services&rft.description=On+Using+JSON-LD+to+Create+Evolvable+RESTful+Services&rft.identifier=https%3A%2F%2Fwww.markus-lanthaler.com%2Fresearch%2Fon-using-json-ld-to-create-evolvable-restful-services.pdf&rft.creator=Markus+Lanthaler%2C+Christian+G%C3%BCtl&rft.date=2012&rft.language=en"> </span></span>
</li>
<li id="cite_note-58"><span class="mw-cite-backlink"><a href="#cite_ref-58">↑</a></span> <span class="reference-text"><a rel="nofollow" class="external text" href="http://www.hydra-cg.com/">www.hydra-cg.com</a></span>
</li>
<li id="cite_note-59"><span class="mw-cite-backlink"><a href="#cite_ref-59">↑</a></span> <span class="reference-text"><span class="cite">Jason Douglas et al.: <a rel="nofollow" class="external text" href="https://web.archive.org/web/20140417012633/http://blog.schema.org/2014/04/announcing-schemaorg-actions.html"><i>Announcing Schema.org Actions.</i></a> In: <i>blog.schema.org.</i> 16. April 2014, archiviert vom <span class="dewiki-iconexternal"><a class="external text" href="https://redirecter.toolforge.org/?url=http%3A%2F%2Fblog.schema.org%2F2014%2F04%2Fannouncing-schemaorg-actions.html">Original</a></span> am <span style="white-space:nowrap;">17. April 2014</span><span>;</span><span class="Abrufdatum"> abgerufen am 8. August 2025</span> (englisch).</span><span style="display: none;" class="Z3988" title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Adc&rfr_id=info%3Asid%2Fde.wikipedia.org%3AJSON-LD&rft.title=Announcing+Schema.org+Actions&rft.description=Announcing+Schema.org+Actions&rft.identifier=https%3A%2F%2Fweb.archive.org%2Fweb%2F20140417012633%2Fhttp%3A%2F%2Fblog.schema.org%2F2014%2F04%2Fannouncing-schemaorg-actions.html&rft.creator=Jason+Douglas+et+al.&rft.date=2014-04-16&rft.source=http://blog.schema.org/2014/04/announcing-schemaorg-actions.html&rft.language=en"> </span></span>
</li>
<li id="cite_note-60"><span class="mw-cite-backlink"><a href="#cite_ref-60">↑</a></span> <span class="reference-text"><a rel="nofollow" class="external text" href="https://www.w3.org/wiki/images/1/10/PotentialActionsApril11.pdf">w3.org</a> (PDF; 1,2 MB) <a rel="nofollow" class="external text" href="https://www.w3.org/wiki/WebSchemas/ActivityActions">w3.org</a></span>
</li>
<li id="cite_note-61"><span class="mw-cite-backlink"><a href="#cite_ref-61">↑</a></span> <span class="reference-text"><i><a href="Request_for_Comments" title="Request for Comments">RFC</a>: <span class="dewiki-iconexternal"><a href="https://datatracker.ietf.org/doc/html/rfc6570" class="extiw external" title="rfc:6570">6570</a></span></i> – <i><span lang="en">URI Template</span></i>. März 2012 (englisch).</span>
</li>
<li id="cite_note-62"><span class="mw-cite-backlink"><a href="#cite_ref-62">↑</a></span> <span class="reference-text"><a rel="nofollow" class="external text" href="https://activitystrea.ms/">activitystrea.ms</a> <a rel="nofollow" class="external text" href="http://tools.ietf.org/html/draft-snell-activitystreams-actions-06">tools.ietf.org</a></span>
</li>
</ol>
<style data-mw-deduplicate="TemplateStyles:r261921266">
/* start https://de.wikipedia.org/ */
.mw-parser-output table.erw-nav-zebra>tbody>:nth-child(odd){background-color:var(--dewiki-hintergrundfarbe-basis)}.mw-parser-output .erw-nav-farbschema-blau .erw-nav-leiste{background-color:#f5f5f5}.mw-parser-output .erw-nav-farbschema-blau .erw-nav-gruppe{background-color:#e5ecf2}.mw-parser-output .erw-nav-farbschema-grau .erw-nav-leiste,.mw-parser-output .erw-nav-farbschema-grau .erw-nav-gruppe{background-color:#ececec}.mw-parser-output .erweiterte-navigationsleiste .klappleiste-inhalt>.wikitable>*>tr{border-top:2px solid #fdfdfd!important;border-bottom:2px solid #fdfdfd!important}@media screen{html.skin-theme-clientpref-night .mw-parser-output .erw-nav-farbschema-blau .erw-nav-leiste,html.skin-theme-clientpref-night .mw-parser-output .erw-nav-farbschema-blau .erw-nav-gruppe,html.skin-theme-clientpref-night .mw-parser-output .erw-nav-farbschema-grau .erw-nav-leiste,html.skin-theme-clientpref-night .mw-parser-output .erw-nav-farbschema-grau .erw-nav-gruppe{background-color:#202122}html.skin-theme-clientpref-night .mw-parser-output .erweiterte-navigationsleiste .klappleiste-inhalt .wikitable tr,html.skin-theme-clientpref-night .mw-parser-output .erweiterte-navigationsleiste .klappleiste-inhalt .wikitable td{border-color:#101418!important}html.skin-theme-clientpref-night .mw-parser-output .erw-nav-bild span[typeof="mw:File"] img{background-color:#c8ccd1}}@media screen and (prefers-color-scheme:dark){html.skin-theme-clientpref-os .mw-parser-output .erw-nav-farbschema-blau .erw-nav-leiste,html.skin-theme-clientpref-os .mw-parser-output .erw-nav-farbschema-blau .erw-nav-gruppe,html.skin-theme-clientpref-os .mw-parser-output .erw-nav-farbschema-grau .erw-nav-leiste,html.skin-theme-clientpref-os .mw-parser-output .erw-nav-farbschema-grau .erw-nav-gruppe{background-color:#202122}html.skin-theme-clientpref-os .mw-parser-output .erweiterte-navigationsleiste .klappleiste-inhalt .wikitable tr,html.skin-theme-clientpref-os .mw-parser-output .erweiterte-navigationsleiste .klappleiste-inhalt .wikitable td{border-color:#101418!important}html.skin-theme-clientpref-os .mw-parser-output .erw-nav-bild span[typeof="mw:File"] img{background-color:#c8ccd1}}.mw-parser-output .erweiterte-navigationsleiste .hlist .wikitable{border-top:0px!important;border-bottom:0px!important;margin-top:0!important;margin-bottom:0!important}.mw-parser-output .erweiterte-navigationsleiste .hlist .wikitable tr:first-of-type td{border-top:0px!important}.mw-parser-output .erweiterte-navigationsleiste .hlist .wikitable tr:last-of-type td{border-bottom:0px!important}
/* end https://de.wikipedia.org/ */
</style><style data-mw-deduplicate="TemplateStyles:r260755238">
/* start https://de.wikipedia.org/ */
.mw-parser-output div.klappleiste{border:1px solid var(--dewiki-rahmenfarbe1);clear:both;font-size:95%;box-sizing:border-box;margin-top:1.5em;padding:2px}.mw-parser-output div.klappleiste:after{clear:both;content:"";display:block}.mw-parser-output div.klappleiste-bild{float:left;padding:2px}.mw-parser-output div.klappleiste-kopf{background:var(--dewiki-hintergrundfarbe5);color:var(--color-base,#202122);text-align:center;font-weight:bold}.mw-parser-output div.klappleiste.mw-collapsed .klappleiste-bild{display:none}.mw-parser-output div.klappleiste+div.klappleiste,.mw-parser-output div.klappleiste+link+div.klappleiste,.mw-parser-output div.klappleiste+link+link+div.klappleiste,.mw-parser-output div.klappleiste+link+style+div.klappleiste,.mw-parser-output div.klappleiste+style+div.klappleiste,.mw-parser-output div.klappleiste+style+style+div.klappleiste,.mw-parser-output div.klappleiste+style+link+div.klappleiste{margin-top:-1px}@media screen{html.skin-theme-clientpref-night .mw-parser-output .klappleiste-bild span[typeof="mw:File"]:not(.skin-invert-image) img{background-color:#c8ccd1}}@media screen and (prefers-color-scheme:dark){html.skin-theme-clientpref-os .mw-parser-output .klappleiste-bild span[typeof="mw:File"]:not(.skin-invert-image) img{background-color:#c8ccd1}}
/* end https://de.wikipedia.org/ */
</style>
<div class="klappleiste mw-collapsible navileiste erweiterte-navigationsleiste navigation-not-searchable center erw-nav-farbschema-blau" role="navigation">
<div class="klappleiste-kopf">Standards des <a href="World_Wide_Web_Consortium" title="World Wide Web Consortium">World Wide Web Consortiums</a> (W3C)<div class="erweiterte-navigationsleiste-quicklinks" style="float:left; font-weight:normal; font-size:75%; margin-left:1em; margin-right:2em; display:none;"><span title="Vorlage anzeigen">V</span> – <span title="Diskussion anzeigen">D</span></div></div>
<div class="klappleiste-inhalt mw-collapsible-content" style="clear:left">
<table class="wikitable erw-nav-zebra" style="width:100%;margin:0;text-align:left;font-size:95%;margin-top:.1em;margin-bottom:.0em;">
<tbody><tr>
<td class="erw-nav-gruppe" style="white-space: nowrap;text-align: right;border: 1px solid transparent;border-top: 1px solid #FFF;border-bottom: 2px solid #FFF;padding: 0 1em;"><b>Empfehlungen</b>
</td>
<td class="hlist" style="text-align: left;border-left: 2px solid #fdfdfd;width: 100%;margin: .4em 0;border-color: #fdfdfd;padding: 0 .25em;">
<p><a href="ActivityPub" title="ActivityPub">ActivityPub</a> | <a href="Accessible_Rich_Internet_Applications" title="Accessible Rich Internet Applications">ARIA</a> | <a href="Canonical_XML" title="Canonical XML">Canonical XML</a> | <a href="Compound_Document_Formats" title="Compound Document Formats">CDF</a> | <a href="Cascading_Style_Sheets" title="Cascading Style Sheets">CSS</a> | <a href="Document_Object_Model" title="Document Object Model">DOM</a> | <a href="W3C_Geolocation_API" title="W3C Geolocation API">Geolocation API</a> | <a href="Hypertext_Markup_Language" title="Hypertext Markup Language">HTML</a> | <a href="HTML5" title="HTML5">HTML5</a> | <a href="InkML" title="InkML">InkML</a> | <a href="Internationalization_Tag_Set" title="Internationalization Tag Set">ITS</a> | <a class="mw-selflink selflink">JSON-LD</a> | <a href="Mathematical_Markup_Language" title="Mathematical Markup Language">MathML</a> | <a href="Web_Ontology_Language" title="Web Ontology Language">OWL</a> | <a href="Platform_for_Privacy_Preferences_Project" title="Platform for Privacy Preferences Project">P3P</a> | PLS | <a href="Portable_Network_Graphics" title="Portable Network Graphics">PNG</a> | <a href="Resource_Description_Framework" title="Resource Description Framework">RDF</a> | <a href="RDF-Schema" title="RDF-Schema">RDF-Schema</a> | <a href="Rule_Interchange_Format" title="Rule Interchange Format">RIF</a> | <a href="SCXML" title="SCXML">SCXML</a> | <a href="Semantic_Interpretation_for_Speech_Recognition" title="Semantic Interpretation for Speech Recognition">SISR</a> | <a href="Simple_Knowledge_Organisation_System" title="Simple Knowledge Organisation System">SKOS</a> | <a href="Synchronized_Multimedia_Integration_Language" title="Synchronized Multimedia Integration Language">SMIL</a> | <a href="SOAP" title="SOAP">SOAP</a> | <a href="Speech_Recognition_Grammar_Specification" title="Speech Recognition Grammar Specification">SRGS</a> | <a href="Speech_Synthesis_Markup_Language" title="Speech Synthesis Markup Language">SSML</a> | <a href="Scalable_Vector_Graphics" title="Scalable Vector Graphics">SVG</a> | <a href="SPARQL" title="SPARQL">SPARQL</a> | <a href="Timed_Text" title="Timed Text">Timed Text</a> | <a href="Turtle_(Syntax)" title="Turtle (Syntax)">Turtle</a> | <a href="VoiceXML" title="VoiceXML">VoiceXML</a> | <a href="Web_Services_Description_Language" title="Web Services Description Language">WSDL</a> | <a href="XForms" title="XForms">XForms</a> | <a href="Extensible_Hypertext_Markup_Language" title="Extensible Hypertext Markup Language">XHTML</a> | <a href="RDFa" title="RDFa">XHTML+RDFa</a> | <a href="XInclude" title="XInclude">XInclude</a> | <a href="XLink_(Syntax)" title="XLink (Syntax)">XLink</a> | <a href="Extensible_Markup_Language" title="Extensible Markup Language">XML</a> | <a href="XML_Base" title="XML Base">XML Base</a> | <a href="XML-Encryption" title="XML-Encryption">XML-Encryption</a> | <a href="XML_Events" title="XML Events">XML Events</a> | <a href="XML_Information_Set" title="XML Information Set">XML Information Set</a> | <a href="Namensraum_(XML)" title="Namensraum (XML)">XML Namespace</a> | <a href="XML_Schema" title="XML Schema">XML Schema</a> | <a href="XML_Signature" title="XML Signature">XML Signature</a> | <a href="XPath" title="XPath">XPath</a> | <a href="XPointer" title="XPointer">XPointer</a> | <a href="XProc" title="XProc">XProc</a> | <a href="XQuery" title="XQuery">XQuery</a> | <a href="Extensible_Stylesheet_Language" title="Extensible Stylesheet Language">XSL</a> | <a href="Extensible_Stylesheet_Language_%E2%80%93_Formatting_Objects" title="Extensible Stylesheet Language – Formatting Objects">XSL-FO</a> | <a href="XSL_Transformation" title="XSL Transformation">XSLT</a> <small>(Elemente)</small>
</p>
</td>
<td class="erw-nav-bild" style="width:0; padding:0 2px 0 0; border:1px solid transparent;" rowspan="5"><div class="noviewer" aria-hidden="true" role="presentation"><span typeof="mw:File"></span></div>
</td></tr>
<tr>
<td class="erw-nav-gruppe" style="white-space: nowrap;text-align: right;border: 1px solid transparent;border-top: 1px solid #FFF;border-bottom: 2px solid #FFF;padding: 0 1em;"><b>Arbeitsentwürfe<br>und Kandidaten</b>
</td>
<td class="hlist" style="text-align: left;border-left: 2px solid #fdfdfd;width: 100%;margin: .4em 0;border-color: #fdfdfd;padding: 0 .25em;">
<p><a href="CCXML" title="CCXML">CCXML</a> | <a href="CURIE" title="CURIE">CURIE</a> | <a href="SMIL_Timesheets" title="SMIL Timesheets">SMIL Timesheets</a> | <a href="SXBL" title="SXBL">sXBL</a> | WICD | <a href="XFrames" title="XFrames">XFrames</a> | <a href="XML_Binding_Language" title="XML Binding Language">XBL</a> | XHTML+MathML+SVG | <a href="XMLHttpRequest" title="XMLHttpRequest">XMLHttpRequest</a>
</p>
</td></tr>
<tr>
<td class="erw-nav-gruppe" style="white-space: nowrap;text-align: right;border: 1px solid transparent;border-top: 1px solid #FFF;border-bottom: 2px solid #FFF;padding: 0 1em;"><b>Anmerkungen</b>
</td>
<td class="hlist" style="text-align: left;border-left: 2px solid #fdfdfd;width: 100%;margin: .4em 0;border-color: #fdfdfd;padding: 0 .25em;">
<p><a href="XAdES" title="XAdES">XAdES</a> | <a href="Extensible_Forms_Description_Language" title="Extensible Forms Description Language">XFDL</a> | <a href="XHTML%2BSMIL" title="XHTML+SMIL">XHTML+SMIL</a> | <a href="Extensible_User_Interface_Protocol" title="Extensible User Interface Protocol">XUP</a>
</p>
</td></tr>
<tr>
<td class="erw-nav-gruppe" style="white-space: nowrap;text-align: right;border: 1px solid transparent;border-top: 1px solid #FFF;border-bottom: 2px solid #FFF;padding: 0 1em;"><b>Richtlinien</b>
</td>
<td class="hlist" style="text-align: left;border-left: 2px solid #fdfdfd;width: 100%;margin: .4em 0;border-color: #fdfdfd;padding: 0 .25em;">
<p><a href="Web_Content_Accessibility_Guidelines" title="Web Content Accessibility Guidelines">Web Content Accessibility Guidelines</a> | Multimodal Interaction Activity | <a href="W3C_Markup_Validation_Service" title="W3C Markup Validation Service">Markup Validation Service</a>
</p>
</td></tr>
<tr>
<td class="erw-nav-gruppe" style="white-space: nowrap;text-align: right;border: 1px solid transparent;border-top: 1px solid #FFF;border-bottom: 2px solid #FFF;padding: 0 1em;"><b>Initiativen</b>
</td>
<td class="hlist" style="text-align: left;border-left: 2px solid #fdfdfd;width: 100%;margin: .4em 0;border-color: #fdfdfd;padding: 0 .25em;">
<p><a href="Web_Accessibility_Initiative" title="Web Accessibility Initiative">Web Accessibility Initiative</a>
</p>
</td></tr>
</tbody></table></div></div></div><!--htdig_noindex--><div><div class="zim-footer">
Dieser Artikel wurde von <a class="external text" title="Zuletzt bearbeitet am 2025-08-08" href="https://de.wikipedia.org/wiki/?title=JSON-LD&oldid=258683029">Wikipedia</a> herausgegeben. Der Text ist unter <a class="external text" href="https://creativecommons.org/licenses/by-sa/4.0/deed.de">Creative Commons Attribution-Share Alike 4.0</a> verfügbar, sofern nicht anders angegeben. Für die Mediendateien können zusätzliche Bedingungen gelten.
</div>
</div><!--/htdig_noindex--></div>
</div>
</main>
</div>
</div>
</div>
<script src="./_webp_/webpHandler.js"></script>
</body></html>